4分钟
用均匀分布模拟泊松分布
用均匀分布模拟泊松分布:
def make_poisson(lmd,tm):
'''
用均匀分布模拟泊松分布。 lmd为 lambda 参数; tm 为时间
'''
t=np.random.uniform(0,tm,size=lmd*tm) # 获取 lmd*tm 个事件发生的时刻
count,tm_edges=np.histogram(t,bins=tm,range=(0,tm))#获取每个单位时间内,事件发生的次数
max_k= lmd *2 # 要统计的最大次数
dist,count_edges=np.histogram(count,bins=max_k,range=(0,max_k),density=True)
x=count_edges[:-1]
return x,dist,stats.poisson.pmf(x,lmd)
该函数首先随机性给出了lmd*tm
个事件发生的时间(时间位于区间[0,tm]
)内。然后统计每个单位时间区间内,事件发生的次数。然后统计这些次数出现的频率。最后将这个频率与理论上的泊松分布的概率质量函数比较。
学员评价