生日悖论是每个人在任何给定的 365 天生日的概率都是相等的。我们开始在房间中添加人员。2 个人在同一天过生日的概率是房间里人数的函数?我写的代码如下:
import numpy as np
import matplotlib.pyplot as plt
x=[0]
y=[0]
for j in range(1000):
if j!=0:
freq = []
L1 = list(np.random.randint(low = 1, high=366, size = j))
result = list((i, L1.count(i)) for i in L1)
for a_tuple in result:
freq.append(a_tuple[1])
print(freq)
rep = j - freq.count(1)
prob = rep/j
y = y + [prob]
x = x + [j]
print(prob)
plt.plot(x,y)
在这里, L1 = list(np.random.randint(low = 1, high=366, size = j))
我选择某人过生日的那一天,并result = list((i, L1.count(i)) for i in L1)
计算每天生日的频率。整个事情都是循环的,以解释越来越多的人。
在下面的 for 循环中,我隔离了唯一事件并找到重复并将值存储在 rep 中。接下来,我将概率计算为共享生日的人的比例,并将它们绘制为数字的函数。然而,这个问题需要我找出只有一个共同生日的概率。我该如何计算?我想我必须循环这整个事情来进行多次试验,但这只是提供了一个准确的解决方案,同一程序的变化更少。目前,我认为我的程序提供了共享生日的一小部分人。