原标题:#源代码#超几何分布算法介绍及python下的实现代码
超几何分布是统计学上一种离散概率分布。它描述了由有限个物件中抽出n个物件,成功抽出指定种类的物件的次数(不归还)。
在产品质量的不放回抽检中,若N件产品中有M件次品,抽检n件时所得次品数X=k
则P(X=k)=C(M k)·C(N-M n-k)/C(N n),C(a b)为古典概型的组合形式,a为下限,b为上限。此时我们称随机变量X服从超几何分布(hypergeometric distribution)
1)超几何分布的模型是不放回抽样
2)超几何分布中的参数是M,N,n
上述超几何分布记作X~H(n,M,N)。
产品抽样检查中经常遇到一类,假定在N件产品中有M件不合格品,即不合格率p=M/N.产品中随机抽n件做检查,发现X件是不合格品, 可知X的概率函数为P(X=k)=C(k,M)*C(n-k,N-M)/C(M,N),k=0,1,2,...通常称这个随机变量X服从超几何分布。这种抽样检查方法等于无放回抽样。数学上不难证明,当M=Np时,n-无穷,limC(k,M)*C(n-k,N-M)/C(M,N)=B(n,p) (二项分布)因此,在实际应用时,只要N>=10n,可用二项分布近似描述不合格品个数。也就是已经知道某个事件的发生概率,判断从中取出一个小样本,该事件以某一个机率出现的概率问题。
在实际应用中,超几何分布的原理经常被用在基因集功能富集的过程中,即我们已知调控某一功能的基因集,我们