当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy random.mtrand.RandomState.negative_binomial用法及代码示例


用法:

RandomState.negative_binomial(n, p, size=None)

从负二项分布中抽取样本。

从具有指定参数,n次成功和p次成功概率的负二项式分布中抽取样本,其中n> 0且p在[0,1]区间内。

参数:
n float 或 array_like of floats

分布参数,> 0。

p float 或 array_like of floats

分布参数> = 0和<= 1。

size int 或 tuple of ints, 可选参数

输出形状。如果给定的形状是(m, n, k), 然后m * n * k抽取样品。如果尺寸是None(默认),如果返回一个值np都是标量。除此以外,np.broadcast(n, p).size抽取样品。

返回值:
out ndarray或标量

从参数化负二项式分布中抽取的样本(每个样本等于N),即达到n次成功之前发生的失败次数。

注意:

负二项式分布的概率质量函数为

P(N;n,p) = \frac{\Gamma(N+n)}{N!\Gamma(n)}p^{n}(1-p)^{N},

哪里n是成功的次数,p是成功的概率,N+n是试验次数,并且\Gamma是伽玛函数。当n是一个整数,\frac{\Gamma(N+n)}{N!\Gamma(n)} = \binom{N+n-1}{N},这是pmf中此术语的更常见形式。负二项式分布给出了在n次成功的情况下N次失败的概率,最后一次尝试成功了。

如果一个人反复掷骰子直到第三次出现“1”,则在第三次“1”之前出现的非“1”的数量的概率分布为负二项式分布。

参考文献:

[1]Weisstein,EricW。“负二项分布”。来自MathWorld-A Wolfram Web资源。http://mathworld.wolfram.com/NegativeBinomialDistribution.html
[2]维基百科,“Negative binomial distribution”,https://en.wikipedia.org/wiki/Negative_binomial_distribution

例子:

从分布中抽取样本:

一个真实的例子。一家公司钻探wild-cat石油勘探井,每口井的成功概率估计为0.1。每个连续的井获得成功的概率是多少,即在钻5口井之后,在6口井等之后成功获得一次成功的概率是多少?

>>> s = np.random.negative_binomial(1, 0.1, 100000)
>>> for i in range(1, 11): # doctest:+SKIP
...    probability = sum(s<i) / 100000.
...    print(i, "wells drilled, probability of one success =", probability)

注:本文由纯净天空筛选整理自 numpy.random.mtrand.RandomState.negative_binomial。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。