SAS中文论坛
标题:
请教高手!如何产生整的随机数?
[打印本页]
作者:
shiyiming
时间:
2006-10-10 09:15
标题:
请教高手!如何产生整的随机数?
请教高手!如何产生整的随机数?
比如说,要求产生100个正态分布 均值为100,方差为20的整的随机数。
谢谢了!!
作者:
shiyiming
时间:
2006-10-10 13:23
标题:
to Norman
好象sas提供了专门的产生随机数的函数,正态分布的随机函数为normal;
用法为y=m+s*normal(seed).其中m为均值,s为标准差.
利用round()函数取整.
例如:
以100为均值,20为标准差的整的随机数可以如下:
data normal;
retain seed 12678;
do i=1 to 100;/*产生一百个*/
a=round(100+20*normal(seed),1);
output;
end;
drop seed i;
run;
作者:
shiyiming
时间:
2006-10-10 21:47
标题:
楼上的做法基本正确
但是,按程序得到的结果方差就成了400,
a=round(100+20*normal(seed),1); 修改成
a=round(100+sqrt(20)*normal(0),1);
作者:
shiyiming
时间:
2006-10-11 13:49
标题:
to Norman
如果统计概率没学好,就不要随便用统计名词.
如果你用现有的计算机技术在你有生之年进行计算的情况下.我有如下观点(承认软件的随机函数是真正随机的情况下)
1.你最后得到的结果百分之九十九点九九九九........不是真正的正态分布随机数(模拟从正态分布总体中抽样,不加筛选得到100个全为整数的结果),也许只能说是随机生成数后进行筛选的一堆结果.
2.从你的字面来说,你要求的均值与方差是指的总体,所以,样本计算出的统计量是什么根本无所谓,这样,我随机生成任意的100个整数就满足条件了(因为整个实数域都在你这个正态分布下,所以任意整数都是在这个分布内的).其实我不怀好意的估计你其实想得到的是100个数,这100个数的平均数是100,这100个数的样本方差(我不知道你想用n-1还是n做分母)等于100.
3.如果我给你改一下提问的题干,其实你表达出来的意思是,请大家用计算机随机生成数(最好使用正态分布这样一个随机函数),然后经过判断把其中的100个整数选出来,使它们的均数等于100,sum((x-xbar)^2))/(n-1)等于20.
4.其实这样生成的数已经和随机正态分布没什么关系了,我们不如给它们取个名字叫"随意数"或者"随便数"好不好?不要侮辱随机和正态分布这两个词了吧.
作者:
shiyiming
时间:
2006-10-23 18:26
标题:
re
欺人太甚,你的语言也太刻薄了吧
作者:
shiyiming
时间:
2006-10-25 20:34
标题:
to wzfgyd
他人笑我太疯颠,我笑他人看不穿.
呵呵.其实我的表达中也有不准确的地方.
将就看一下吧.
你是希望在痛苦中学到东西还是高兴的无知到死?
作者:
shiyiming
时间:
2006-10-26 07:32
标题:
@
ahuige能否让人在高兴中学到东西?善事啊。
作者:
shiyiming
时间:
2009-1-12 15:36
标题:
Re: 请教高手!如何产生整的随机数?
data norm;
do seed=1 to 100;
x=170+sqrt(20)*rannor(seed); /*x=均值为170,方差为20的正态分布随机
数*/
y=170+sqrt(20)*rannor(seed);/*注意由于是随机数,两组结果不一样,且每
次都不一样*/
output;
end;
proc print; /*在SAS输出窗口给出结果*/
run;
随机数函数-------seed 每随意赋一个值可得到给定分布的随机变量抽样值
○1 均匀分布随机数函数UNIFORM(seed)或RANuni(seed)
○2 标准正态分布随机数函数normal(seed)或RANnor(seed) ,
均值为a 方差为σ2 的正态分布随机数函数
X=a+sqrt(σ2)* RANnor(seed),
这儿,sqrt(x)= x
对数正态分布Y=exp(X)
○3 伽马分布随机数函数RANgam(seed)
○4 指数分布随机数函数RANexp(seed)
○5 三角分布随机数函数RANtri(seed)
○6 柯西分布随机数函数RANcau(seed)
○7 二项分布随机数函数RANnml(seed)
○8 泊松分布随机数函数RANpoi(seed)
○9 离散型分布随机数函数RAN (seed,p1,p2,…pn)
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2