全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1474 6
2012-02-24
一道经典概率题:一场足球比赛有22名运动员,有人生日相同的概率是多少。
这个如果用古典概率算法,算出来是48%。
我手头刚好有一份600人左右的身份证号码,已经从中提取了生日信息。
想用SAS来抽样验证以上概率
已经用pickit=ceil(rannui(0)*600)在样本中随机抽取观测,每个数据集抽取22个
这样可以通过生成很多个数据集
判断有几个数据集出现生日一样的,除以总数据集,应该接近48%的概率
不过对于每一个数据集,如何判断有生日一样?
还请各位大侠不吝赐教,谢谢。
二维码

扫码加我 拉你入群

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

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

全部回复
2012-2-24 16:33:02
48% 怎么算出来的啊?
二维码

扫码加我 拉你入群

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

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

2012-2-24 18:29:28
Schizor 发表于 2012-2-24 16:33
48% 怎么算出来的啊?
1-365*364*...*344/365^22
二维码

扫码加我 拉你入群

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

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

2012-2-24 20:16:20
复制代码
二维码

扫码加我 拉你入群

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

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

2012-2-25 03:59:22
看到高手了~
二维码

扫码加我 拉你入群

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

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

2012-2-25 06:30:49
...
proc surveyselect data =a method = srs n =22 out=a2 reps =10000 noprint seed =11;
run ;
ods listing;
proc sql;
   select sum(sameB)*1e-4 label =' the probability is ' from (
      select (count(distinct monthD) <22) as sameB from (
         select replicate, put(month(birthday), z2.)||put(day(birthday), z2.) as monthD from a2)
         group by replicate
)
;
quit;

Ricky 认为程序的效率可以归结为尽量减少DO循环的次数。在我眼里使用%DO往往更糟糕。不过我并没有测试楼上程序的效率。京剧

二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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