13随机模拟基础

上传人:飞*** 文档编号:2458107 上传时间:2017-07-24 格式:PPT 页数:53 大小:814KB
返回 下载 相关 举报
13随机模拟基础_第1页
第1页 / 共53页
13随机模拟基础_第2页
第2页 / 共53页
13随机模拟基础_第3页
第3页 / 共53页
13随机模拟基础_第4页
第4页 / 共53页
13随机模拟基础_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《13随机模拟基础》由会员分享,可在线阅读,更多相关《13随机模拟基础(53页珍藏版)》请在金锄头文库上搜索。

1、第13章 随机模拟基础,清华大学经管学院 朱世武ZResdat样本数据:SAS论坛: ,分布的模拟实现,中心极限定理(对于和): 假设X1,Xn独立同分布,均值和标准差分别为和。令 , 如果n足够大(比如,n大于30),则Sn近似地服从正态分布,均值为n,方差为 。中心极限定理(对于均值):假设X1,Xn独立同分布,均值和标准差分别为和。令 ,如果n足够大(比如,n大于30),则 近似地服从正态分布,均值为,方差为 。中心极限定理表明,满足一定条件的独立同分布随机变量的和或均值将服从正态分布,而与它们的分布情况无关。下面分别给出中心极限定理的模拟实现结果。,随机变量和的分布模拟,例13.1 假

2、设掷骰子n次,分别用X1,Xn表示每次得到的数值。令,则Sn近似于正态分布。分别用SAS系统实现n=2和n=3的模拟分布图。,n=2的模拟分布图。data a;do x1=1 to 6;do x2=1 to 6;output;end;end; /*模拟掷骰子两次,生成36行数据*/data a;set a;x=sum(x1,x2);proc univariate data=a noprint;var x;histogram/normal (mu=est sigma=est);run;,N=2,N=3,例13.2 二项分布是二点分布的和。所以,直接作二项分布的分布图也就是也就是对二点分布和的模拟

3、。设二项分布的p=0.8,分别作N=10, 20, 25, 50, 100, 200, 1000时的分布图。,直接求概率后画图。,%macro a(n); /*建立一个以n为参数的宏*/data rv;do m= 1 to &n;if m=0 then probb=probbnml(0.8, &n, 0);/*probbnml函数返回以0.8、n、0为参数的二项分布概率*/else probb=probbnml(0.8, &n, m)-probbnml(0.8, &n, (m-1);/*注意到probbnml函数返回累积概率,所以这里要做减法*/ output; end;,symbol1 i=

4、needle width=6 c=blue h=1 cells; /*规定两点之间的插值方法、线条宽度、数据点符号的高度及颜色,注意这里使用了symbol1*/ proc gplot data=rv;plot probb*m=1;%mend a;%a(10);%a(15);%a(20);%a(25);%a(50);%a(100);%a(200);%a(1000);run;,模拟二项分布随机数的分布图。(设二项分布的p=0.8,分布模拟N=10, 20, 25, 50, 100, 200, 1000时随机数的分布图。),symbol; goptions ftext= ctext= htext=;

5、%macro a(n);data rv;retain _seed_ 0;do _i_ = 1 to &n;binom1 = ranbin(_seed_,&n,0.8); /*ranbin函数返回以seed、n、0.8为参数的二项分布随机变量*/output;end;drop _seed_ _i_;run; proc univariate data=rv noprint; var binom1; histogram/normal( mu=est sigma=est); inset normal ; run;,%mend a;%a(10);%a(15);%a(20);%a(25);%a(50);%

6、a(100);%a(200);%a(1000);run;,前面所有模拟结果表明,随机n的增大,和的分布越来越接近正态分布。事实上,直观分析就可以得出离散的随机变量都有这样的特性,如上面掷骰子、二项分布等。当然中心极限定理保证连续分布也有这样的性质。,随机变量均值的分布模拟,例13.4 对于 =6的指数分布,分别模拟出N=1, 10, 20, 50, 100, 200, 1000.时,均值的分布 。,统计抽样中的分布模拟,例13.5 设总体为 =6指数分布的100个随机数。设样本容量为80, 进行n次抽样,分别用 表示第1次, 第n次抽得的随机数。 ,模拟 和 的分布。对于求和 ,随机抽取的次数

7、分别为n=5, 10, 20, 50, 100, 200, 1000.,symbol; goptions ftext= ctext= htext=;options nodate nonotes nosource;data rv; /*创建由100个随机数构成的总体*/retain _seed_ 0;do _i_ = 1 to 100;exp = ranexp(_seed_)/6; output;end;drop _seed_ _i_;data rv80; /*从总体中选择80个作为样本*/delete;,%macro b(y);%do i=1 %to %eval(&y);data a;set

8、rv;obs=_n_;proc sql;create view tmp as /*建立名为tmp的视图(view)*/ select *, ranuni(0) as _ran_ from a /*生成变量_ran_,服从0,1上的均匀分布*/ order by calculated _ran_; /*按_ran_排序*/ quit;,data random;set tmp(obs =80); /*取前80个*/drop _ran_;rename exp=exp&i;data rv80;merge rv80 random;%end;data rv80(keep=s&y);set rv80;s&y

9、=sum(of exp1-exp&y);proc univariate data=rv80 noprint; var s&y; histogram/normal( mu=est sigma=est noprint ); inset normal ; run; %mend b;,%b(5);%b(10);%b(20);%b(50);%b(100);%b(200);%b(1000);run;,样本均值的分布模拟。准备数据集:产生100个指数分布的随机数。每次随机抽取的次数分别为 n=5, 10, 20, 50和80, 抽取180次样进行模拟。,产生100个指数分布的随机数。,symbol; gop

10、tions ftext= ctext= htext=;options nodate nonotes nosource;data rv;retain _seed_ 0;do _i_ = 1 to 100;exp = ranexp(_seed_)/6; output;end;drop _seed_ _i_;run;,样本容量分别为5, 10, 20, 50和80, 抽180次样。的分布模拟。,symbol; goptions ftext= ctext= htext=;options nodate nonotes nosource;%macro b(y,z);data rv&y;delete;%do i=1 %to %eval(&z);data a;set rv;obs=_n_;proc sql; /*sql过程创建视图tmp*/ create view tmp as select *, ranuni(0) as _ran_ from a order by calculated _ran_; quit;data random;set tmp(obs =&y); /*取前&y个观测值*/drop _ran_;,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号