我使用Python3来计算这个维基百科示例的概率质量函数(PMF):
我试图遵循这个scipy文档:
https://docs.scipy.org/doc/scipy-0.19.0/reference/generated/scipy.stats.binom.html
文件清楚地说:
Notes
The probability mass function for binom is:
binom.pmf(k) = choose(n, k) * p**k * (1-p)**(n-k)
for k in {0, 1,..., n}.
binom takes n and p as shape parameters.
好吧,我试着在考虑维基百科的例子的情况下实现这一点。这是我的代码:
from scipy.stats import binom
n = 6
p = 0.3
binom.pmf(k) = choose(n, k) * p**k * (1-p)**(n-k)
print (binom.pmf(1))
但是,我收到此错误的消息:
File "binomial-oab.py", line 7
binom.pmf(k) = choose(n, k) * p**k * (1-p)**(n-k)
^
SyntaxError: can't assign to function call
我该如何解决这个问题?
答案 0 :(得分:6)
只需致电binom.pmf(1, n, p)
即可获得k=1
的结果。文档中的表达式只是向您展示如何在数学上定义PMF,而不是您期望执行的实际代码片段。
答案 1 :(得分:0)
您可以为此使用scipy.stats.binom.pmf(k)
。例如:
n = 10
p = 0.3
k = np.arange(0,21)
binomial = scipy.stats.binom.pmf(k,n,p)
print(binomial)