问题描述
stats.norm(0,0.1).pdf(0) -> 3.9894
import matplotlib.pyplot as plt
import numpy as np
import scipy.stats as stats
import math
mu = 0
variance = 1
sigma = math.sqrt(variance)
x = np.linspace(mu - 3*sigma,mu + 3*sigma,100)
plt.plot(x,stats.norm.pdf(x,mu,sigma))
mu = 0
variance = (0.5*0.5) / np.sqrt(100)
sigma = math.sqrt(variance)
x = np.linspace(mu - 3*sigma,sigma))
plt.show()
解决方法
probability density function的逐点取值不是概率,因此没有理由期望其取值小于1。
概率由适当的PDF的积分表示。例如,一个取值为0到1/10之间的值10,而其他任何地方取值为0的函数都是有效的PDF。它在1/20处的值为10> 1,但在任何时间间隔[a,b]内的积分均≤1。正是这个整数表达了一个概率,即基础随机变量的概率取a和b之间的值。