生日问题的真正答案是什么?


13

“要使找到同一生日的两个人的概率至少达到50%,班级必须有多大?”

我在Facebook上有360个朋友,并且正如预期的那样,他们生日的分布根本不统一。我有一天和9个朋友同一个生日。(大假期和情人节之后的9个月似乎是个大假期,大声笑。)因此,考虑到生日更有可能是几天,所以我假设23个数字是上限。

对于这个问题是否有更好的估计?


3
一个360人的样本对于一年中365天的生日分布并不是一个大样本。您肯定无法在这么小的样本中检查一致性。
西安

一个人有一个生日,另一个人没有同一个生日的几率是多少?364/365,第三者分享两个生日的几率是多少?(364/365) * (363/365)。对此进行扩展,直到有机会为止< 50%。这意味着没有人有相同的生日的几率,这反过来意味着至少两个人共享一个生日的几率是> 50%
zzzzBov 2012年

8
我们是否假设您有随机的朋友?
詹姆斯

1
@zzzzBov-您不了解OP的要求。在这种方法中,我们假设每个生日都有同等的可能性,每个生日都有机会成为您的生日。该OP是要求估计什么时候说出生在1月1日将是不作为可能是出生于二月151365
probabilityislogic

Answers:


18

幸运的是,有人发布了一些真实的生日数据,讨论了一个相关的问题(分发统一)。我们可以使用它并重新采样以表明您的问题的答案显然是23,与理论答案相同。

> x <- read.table("bdata.txt", header=T)
> birthday <- data.frame(date=as.factor(x$date), count=x$count)
> summary(birthday) 
      date         count     
 101    :  1   Min.   : 325  
 102    :  1   1st Qu.:1266  
 103    :  1   Median :1310  
 104    :  1   Mean   :1314  
 105    :  1   3rd Qu.:1362  
 106    :  1   Max.   :1559  
 (Other):360                 
> results <- rep(0,50)
> reps <-2000 # big number needed as there is some instability otherwise
> for (i in 1:50)
+ {
+ count <- 0
+ for (j in 1:reps)
+ {
+ samp <- sample(birthday$date, i, replace=T, prob=birthday$count)
+ count <- count + 1*(max(table(samp))>1)
+ }
+ results[i] <- count/reps
+ }
> results
 [1] 0.0000 0.0045 0.0095 0.0220 0.0210 0.0395 0.0570 0.0835 0.0890 0.1165
[11] 0.1480 0.1770 0.1955 0.2265 0.2490 0.2735 0.3105 0.3350 0.3910 0.4165
[21] 0.4690 0.4560 0.5210 0.5310 0.5745 0.5975 0.6240 0.6430 0.6950 0.7015
[31] 0.7285 0.7510 0.7690 0.8025 0.8225 0.8280 0.8525 0.8645 0.8685 0.8830
[41] 0.8965 0.9020 0.9240 0.9435 0.9350 0.9465 0.9545 0.9655 0.9600 0.9665

8
确实,可以通过舒尔凸度表明,对于生日的任何不均匀分布,匹配的概率至少与统一情况下的概率相同。这是J. Michael Steele的练习13.7《柯西·舒瓦兹大师班:数学不等式的介绍》,剑桥大学出版社,2004年,第1页。206
主教

2
@西安:的确。现在,如果我只知道有人为一本高质量,高阅读量的统计杂志做过书评,那么我建议他们对其进行复审,以使统计学家具有更高的知名度...但是在哪里可以找到这样的人...
红衣主教

3
(对于那些可能想知道我之前的评论的人,它引用了一个事实,即@西安是Chance的新任命书评人。)
主教

2
@西安,检查一下,看看您的想法:table(replicate(10^5, max(tabulate(sample(1:365,360,rep=TRUE)))))
ub

3
除了R cognoscenti之外,尚不清楚@ Xi'an和我本人之前的注释中的代码模拟OP的情况。运行它可以确定,从均匀分布的人口中随机选择的360个人中,有9个人或更多人过生日的机会仅为100,000人中的40个人。共享生日的最大数量的最可能的值是5
whuber
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.