全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2346 4
2012-04-07
本人想做值序抽样法产生随机数。产生500组0 1均匀分布的随机数,每组有6个,然后从小到大排序,想提取排第4的到一个新的变量y,求高手指教。本人愚钝,只能做到如下,求修正,求添加
data a;
do j=1 to 500;
array r{6} r1-r6;
  do i=1 to 6;
  r{i}=ranuni(0);
end;output;end;



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-4-7 23:16:09
复制代码
比较土,但可以实现
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-4-7 23:50:21
adding a sortn call just before out as below,


data a;
seed=12789;
array r{6} r1-r6;
do j=1 to 500;
        do i=1 to 6;
                  r{i}=ranuni(seed);           
        end;
       call sortn (of r{*});
        output;
end;
keep r:;
run;

proc print;
sum r:;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-4-8 02:34:03
freerunning_sky 发表于 2012-4-7 23:16
比较土,但可以实现
谢谢,万分感谢。请原谅新手没币。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-4-8 02:35:47
bobguy 发表于 2012-4-7 23:50
adding a sortn call just before out as below,
谢谢,这位高手的较为简洁。call sorth给我新的知识了,谢谢。但是我要提取排第4的值,所以似乎要在output前再加个y={4};也很谢谢你。请原谅新手没币送。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群