如何在 Python scipy 中的伽玛概率密度函数中获得特定 x 值的概率?
How can I obtain a probability at specific x value in a gamma probability density function in Python scipy?
我可以通过 python
中的以下内容获得 gamma 分布中 x 的概率
import numpy as np
from scipy.stats import gamma
# Gamma distribution
print(gamma.pdf(x=2, a=2, scale=1, loc=0)) # 0.27067
但是,每次我想获得特定 x 的概率时,这都需要创建一个新的伽玛分布。
我喜欢创建一个指定的伽玛分布my_gamma_dist
,然后一次又一次地从中抽取特定的 x 值。
import numpy as np
from scipy.stats import gamma
my_gamma_dist = gamma.pdf(x, a=2, scale=1, loc=0)
my_gamma_dist.x = 2 # AttributeError: 'numpy.ndarray' object has no attribute 'x'
print(my_gamma_dist(x=2)) # TypeError: 'numpy.ndarray' object is not callable
我已经查看了文档,但我仍然不清楚。
您可以定义分布,然后在您要查找的值上调用 .pdf
方法,即:
from scipy.stats import gamma
g = gamma(a=2, scale=1, loc=0)
x=2
g.pdf(x)
0.2706705664732254
x=3
g.pdf(x)
0.14936120510359185
# Or pass a list of values to evaluate
g.pdf([2,3])
array([0.27067057, 0.14936121])
我可以通过 python
中的以下内容获得 gamma 分布中 x 的概率import numpy as np
from scipy.stats import gamma
# Gamma distribution
print(gamma.pdf(x=2, a=2, scale=1, loc=0)) # 0.27067
但是,每次我想获得特定 x 的概率时,这都需要创建一个新的伽玛分布。
我喜欢创建一个指定的伽玛分布my_gamma_dist
,然后一次又一次地从中抽取特定的 x 值。
import numpy as np
from scipy.stats import gamma
my_gamma_dist = gamma.pdf(x, a=2, scale=1, loc=0)
my_gamma_dist.x = 2 # AttributeError: 'numpy.ndarray' object has no attribute 'x'
print(my_gamma_dist(x=2)) # TypeError: 'numpy.ndarray' object is not callable
我已经查看了文档,但我仍然不清楚。
您可以定义分布,然后在您要查找的值上调用 .pdf
方法,即:
from scipy.stats import gamma
g = gamma(a=2, scale=1, loc=0)
x=2
g.pdf(x)
0.2706705664732254
x=3
g.pdf(x)
0.14936120510359185
# Or pass a list of values to evaluate
g.pdf([2,3])
array([0.27067057, 0.14936121])