假设我知道镇上男性的平均年龄是50岁。标准差是10.我如何使用SAS从这个分布中抽取年龄?
答案 0 :(得分:1)
在数据步骤中,您可以使用x = rand('NORMAL',50,10)
。 SAS / IML具有不同的语法。您可能希望使用call streaminit
设置随机种子。
答案 1 :(得分:0)
您可以使用rand
函数生成具有该均值/标准的随机数据:
%let numsampled=10;
data ages;
call streaminit(7); *initialize the seed;
do id = 1 to &numsampled;
age = rand('Normal',50,10);
output;
end;
run;
proc print data=ages;
run;
如果您想进行更复杂的抽样,例如生成集合,然后使用替换进行抽样,则可以先生成N大小的填充,然后使用proc surveyselect
从该填充中抽取。