在 scipy.stats.norm 的情况下,概率密度函数是什么?
What is probability density function in the context of scipy.stats.norm?
这是一个非常基本的问题,但我似乎找不到好的答案。 scipy 为
计算的究竟是什么
scipy.stats.norm(50,10).pdf(45)
我知道在均值为 50 且标准差为 10 的高斯分布中,特定值(如 45)的概率为 0。那么 pdf 到底在计算什么?是不是高斯曲线下的面积,如果是,x轴上的取值范围是多少?
您得到的是普通 pdf 函数的值为 x 的 pdf
均值为 50,标准差为 10。
check the function here)
使用
易于可视化
npdf=norm(50,10)
plt.plot(range(0,100), npdf.pdf(range(0,100)), 'k-', lw=2)`
您还可以从使用
创建的普通 pdf 生成随机变量
npdf.rvs(1000) #1000 numbers
hist=plt.hist(n.rvs(10000),bins=100,normed=True)
theoretical pdf and normalized histogram from random variables
Python表示的probability density function of the normal distribution是
from math import pi
from math import exp
from scipy import stats
def normal_pdf(x, mu, sigma):
return 1.0 / (sigma * (2.0 * pi)**(1/2)) * exp(-1.0 * (x - mu)**2 / (2.0 * (sigma**2)))
(将其与维基百科定义进行比较)。这正是 scipy.stats.norm().pdf()
计算的内容:给定 mu, sigma
.
点 x
处的 pdf 的 值
请注意,这是不是概率(pdf下的=面积)而是值[= pdf 的 x
点传递给 pdf(x)
的 50=](该值很可能大于 1.0
!)。例如,您可以看到 N(0, 0.1)
在 x = 0
:
val = stats.norm(0, 0.1).pdf(0)
print(val)
val = normal_pdf(0, 0, 0.1)
print(val)
给出输出
3.98942280401
3.989422804014327
完全不是概率 = 曲线下面积!
请注意,这与 x = 0
等特定值的概率是 0
的说法并不矛盾,因为正式地说,pdf 下的面积对于一个点(即,间隔length 0
) 为零(如果 f 是 [a, b] 上的连续函数并且 F 是其在 [a 上的反导数, b], 那么 f 在 [a, b] = F(a) - F(b) 上的定积分. 这里, a = b = x
因此积分的值为 F(x) - F(x) = 0
).
这是一个非常基本的问题,但我似乎找不到好的答案。 scipy 为
计算的究竟是什么scipy.stats.norm(50,10).pdf(45)
我知道在均值为 50 且标准差为 10 的高斯分布中,特定值(如 45)的概率为 0。那么 pdf 到底在计算什么?是不是高斯曲线下的面积,如果是,x轴上的取值范围是多少?
您得到的是普通 pdf 函数的值为 x 的 pdf 均值为 50,标准差为 10。 check the function here)
使用
易于可视化npdf=norm(50,10)
plt.plot(range(0,100), npdf.pdf(range(0,100)), 'k-', lw=2)`
您还可以从使用
创建的普通 pdf 生成随机变量npdf.rvs(1000) #1000 numbers
hist=plt.hist(n.rvs(10000),bins=100,normed=True)
theoretical pdf and normalized histogram from random variables
Python表示的probability density function of the normal distribution是
from math import pi
from math import exp
from scipy import stats
def normal_pdf(x, mu, sigma):
return 1.0 / (sigma * (2.0 * pi)**(1/2)) * exp(-1.0 * (x - mu)**2 / (2.0 * (sigma**2)))
(将其与维基百科定义进行比较)。这正是 scipy.stats.norm().pdf()
计算的内容:给定 mu, sigma
.
x
处的 pdf 的 值
请注意,这是不是概率(pdf下的=面积)而是值[= pdf 的 x
点传递给 pdf(x)
的 50=](该值很可能大于 1.0
!)。例如,您可以看到 N(0, 0.1)
在 x = 0
:
val = stats.norm(0, 0.1).pdf(0)
print(val)
val = normal_pdf(0, 0, 0.1)
print(val)
给出输出
3.98942280401
3.989422804014327
完全不是概率 = 曲线下面积!
请注意,这与 x = 0
等特定值的概率是 0
的说法并不矛盾,因为正式地说,pdf 下的面积对于一个点(即,间隔length 0
) 为零(如果 f 是 [a, b] 上的连续函数并且 F 是其在 [a 上的反导数, b], 那么 f 在 [a, b] = F(a) - F(b) 上的定积分. 这里, a = b = x
因此积分的值为 F(x) - F(x) = 0
).