📜  Python中的 sympy.stats.NegativeBinomial()(1)

📅  最后修改于: 2023-12-03 15:34:24.454000             🧑  作者: Mango

Python中的 sympy.stats.NegativeBinomial()

sympy.stats.NegativeBinomial()是SymPy库中用来生成负二项分布随机变量的类。负二项分布是二项分布的扩展形式,它描述了在固定次试验中成功次数的概率分布。与二项分布不同的是,负二项分布不是描述一定次数内的成功次数,而是描述在获得固定数量的成功之前需要进行多少次试验。

语法

使用sympy.stats.NegativeBinomial()的基本语法如下:

from sympy.stats import NegativeBinomial, density, E, variance
from sympy import Symbol

n = Symbol('n', integer=True, positive=True)
p = Symbol('p', Rational=True, positive=True)

X = NegativeBinomial('X', n, p)

density(X)(k)   # an expression in terms of k, n and p; represents the PMF of X at k
E(X)            # an expression in terms of n and p; represents the expected value of X
variance(X)     # an exprssion in terms of n and p; represents the variance of X

其中,np是正数,X是负二项分布的随机变量名称,k是随机变量取的值。

参数

sympy.stats.NegativeBinomial()的参数如下:

  • n:表示成功之前需要进行的试验次数。
  • p:表示每个试验中成功的概率。
返回值

sympy.stats.NegativeBinomial()返回符号变量,因此需要使用density(X)(k)E(X)variance(X)等方法来获取实际数值。

例子

以下是使用sympy.stats.NegativeBinomial()的一个示例:

from sympy.stats import NegativeBinomial, density, E, variance
from sympy import Symbol

n = Symbol('n', integer=True, positive=True)
p = Symbol('p', Rational=True, positive=True)

X = NegativeBinomial('X', n, p)

# 获取随机变量 X 取值为 2 的概率
p_X_2 = density(X)(2)

# 获取随机变量 X 的期望值
exp_X = E(X)

# 获取随机变量 X 的方差
var_X = variance(X)

print("The probability density function of X at k=2 is:", p_X_2)
print("The expected value of X is:", exp_X)
print("The variance of X is:", var_X)

输出:

The probability density function of X at k=2 is: p**2*(n + 1)*(-p + 1)**(-n - 2)
The expected value of X is: n*(1 - p)/p
The variance of X is: n*(1 - p)/p**2
总结

sympy.stats.NegativeBinomial()是SymPy库中用来生成负二项分布随机变量的类。通过设置成功之前需要进行的试验次数和每个试验中成功的概率来生成负二项分布随机变量,并使用density(X)(k)E(X)variance(X)等方法来获取实际数值。