全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1638 9
2013-09-28
我想写一个program,是要生成5个1到59之间的随机整数,不能重复,想不到让生成的随机数不重复的方法啊,或者说就算想到一些逻辑也不知道怎么写出来,望高人指点
二维码

扫码加我 拉你入群

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

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

全部回复
2013-9-28 05:40:31
In Excel Data Analysis, you can generate random numbers continuously and uniformly distributed between 1 and 59

Also in Excel, you can specify the discrete probabilities for the integers between 1 and 59, generate random numbers you want!

I tested both methods and both worked!

Hope this helps
二维码

扫码加我 拉你入群

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

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

2013-9-28 06:45:03
Here is a very simple solution which provides no duplicates within each run.

data a;
  do i=1 to 59; output; end;
run;

data b;
  set a;
  order=ranuni(-1);
run;

proc sort data=b ; by order; run;

proc print data=b(obs=5);
run;
二维码

扫码加我 拉你入群

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

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

2013-9-28 06:57:55
shelf317 发表于 2013-9-28 05:40
In Excel Data Analysis, you can generate random numbers continuously and uniformly distributed betwe ...
Thank you for your help. But the program is asked to coded by SAS. It is my homework. :)
二维码

扫码加我 拉你入群

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

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

2013-9-28 07:08:48
列出数字1-59。然后利用不放回式随机抽样抽出5个数即可。京剧
二维码

扫码加我 拉你入群

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

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

2013-9-28 07:20:18
bobguy 发表于 2013-9-28 06:45
Here is a very simple solution which provides no duplicates within each run.

data a;
Thank you, the code works. What should I do if I want to generate 10 entries of 5 unduplicated integers follow unif(1,59)
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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