numpy 在Python中使用Python发行版

w51jfk4q  于 2023-11-18  发布在  Python
关注(0)|答案(1)|浏览(107)

Skellam distribution是两个独立的泊松分布变量之差的概率分布,所以,这个函数是基于减法的,我以前从来没有用过。
考虑XY是两个Poisson公式的两个结果,确切地说是X=21.75%Y=7.58%,如何应用Strilam分布?

#Calculate Poisson
mu_X = 2.6
X = ((mu_X ** 3) * 2.7182818284 ** (-mu_X)) / 6 * 100
X = 21.75%

mu_Y = 0.5
Y = ((mu_Y ** 2) * 2.7182818284 ** (-mu_Y)) / 2 * 100
Y = 7.58

字符串
我曾经想过一个简单的,但似乎太平庸,简单,绝对不正确。

#Incorrect use of Skellam
Z = 21.75% - 7.58%
Z = 14.17%


如何正确地使用Python和Python中的Sparklam发行版?我想使用numpyscipy

4xrmg8kj

4xrmg8kj1#

在您的问题中,您正在计算两个具有不同均值mu_Xmu_Y的泊松变量假设两个值分别为3和2的概率。您可以重新计算概率,

from scipy.stats import poisson

mu_X = 2.6
mu_Y = 0.5

# Calculate the Poisson PMF for k=3 with mean mu_X
prob_X = poisson.pmf(3, mu_X) # about 21%

# Calculate the Poisson PMF for k=2 with mean mu_Y
prob_Y = poisson.pmf(2, mu_Y) # about 7%

字符串
相反,泊松分布回答了以下问题:“上面两个泊松变量的 * 差 * 等于给定值的概率是多少?”
要在Python中计算,您可以使用

from scipy.stats import skellam

# Create a Skellam distribution with the two mean values
dist = skellam(mu_X, mu_Y)

# Calculate the probability of getting 1, just as example
prob = dist.pmf(1) # trying 1 but one could try whatever integer value of the difference


在这两种情况下,.pmf都给出了你想要的结果,即与给定输入值对应的概率(前一种情况下是泊松,后一种情况下是泊松)。
在这种情况下,你可以输入你想知道概率的差值。

相关问题