matlab得到标准正态分布的随机数

问题描述:

matlab得到标准正态分布的随机数

要求按图示流程来,z应该怎么求?


1个回答 分类:综合 2014-11-23

问题解答:

我来补答
% 产生0~1均匀分布
m=1000;n=10;
u=rand(m,n);
% 产生a~b均匀分布
a=-1;b=1;
x=a+(b-a)*u;
% 正态分布函数的逆是求不出来的
% 只能通过瑞利分布产生
% 产生时需要两个0~1均匀分布,所以需新定义v
sigma=1;mu=0;
v=rand(size(u));
z=sqrt(2*sigma^2*log(1./(1-u))).*cos(2*pi*v);
% 利用上述标准正态分布产生普通的正态分布
sigma=3;mu=2;
z=randn(1000,10);
x=mu+z*sigma;
% 产生对数正态分布
x=exp(x);
你可以!分别!在每段后边加上(每一段的后边加一个,一一对应~):
ksdensity(u(:));
ksdensity(x(:));
ksdensity(z(:));
ksdensity(x(:));
ksdensity(x(:));
来看概率密度函数.我不敢上传图片,因为那样百度就给我把整个回答屏蔽掉了~
 
 
展开全文阅读
剩余:2000