欢迎来到天天文库
浏览记录
ID:48348494
大小:30.50 KB
页数:2页
时间:2019-11-24
《正态分布程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、用程序计算正态分布的方法如下:functionzfenbu(x){varsign=1;if(x<0.0){sign=-1;x=Math.abs(x);}if(x>5.0)x=5.0;varn=0;varsum=0.0;varcontr=0.0;contr=Math.pow(x,2*n+1)/(Math.pow(2.0,n)*(2*n+1)*Multip(n));sum+=((n%2==0)?1:-1)*contr;while(contr>0.000001){n++;contr=Math.pow(x,2*n+1)/(Math.pow(2.0,n)*(2*n+1)
2、*Multip(n));sum+=((n%2==0)?1:-1)*contr;}sum=0.5+1/Math.sqrt(2*Math.PI)*sum;if(sign==-1)return1-sum;elsereturnsum;}matlab直接这样的函数调用用normcdf(x,0,1)就是标准正态分布的分布函数。如果是带平均值和方差μ和σ的正态分布,用normcdf(x,mu,sigma)标准正态分布就是mu=0,sigma=1的特例。例如>>normcdf(0,0,1)ans=0.5>>normcdf(inf,0,1)ans=1>>normcdf(-inf
3、,0,1)ans=0有一组数据用matlab求它的标准差,看它是否符合正态分布1C=[7975.6257982.7576.178.27576.32560.569.1575.17584.07563.177.162576.576576.57568.375];Std=std(C);%标准差ksdensity(C)2clc;clearC=[7975.6257982.7576.178.27576.32560.569.1575.17584.07563.177.162576.576576.57568.375];Std=std(C)%标准差[F,XI]=ksdensity(C
4、)figure(1)plot(XI,F,'o-')x=randn(300000,1);figure(2)[f,xi]=ksdensity(x);plot(xi,f);用matlab画正态概率密度分布图,把所有的值加起来等于1x=-3:0.2:3;y=normpdf(x,0,1);plot(x,y)sum(y)*.2normpdf就是正态分布的概率密度函数,要算总概率就是要求这个函数到x轴之间的面积,就是积分,所以那里要乘0.2,这不是精确的结果,因为不是从-无穷大加到无穷大,而只是加了一部分,所以所得结果一定小于1.
此文档下载收益归作者所有