为什么非标准化分布的 scipy 范数不同
Why is scipy norm different for non-standardized distributions
我服从均值为 71、方差为 20.25 的正态分布。示例取自 "Heads first statistics".
当我将正态分布标准化为零均值时,我得到了正确的结果,但根据我对 scipy 和正态分布的理解,我应该得到非标准化分布的相同概率。
from scipy.stats import norm
import math
# prints 0.539337742276
print(norm(71, 20.25).sf(69))
zscore = (69-71) / math.sqrt(20.25)
print(norm(0,1).sf(zscore))
# prints 0.671639356718
请注意 norm
是用均值和 尺度 参数化的,而不是均值和平方尺度。因此,
>>> from scipy.stats import norm
>>> norm(71, pow(20.25,0.5)).sf(69)
0.6716393567181147
>>> zscore = (69-71) / pow(20.25,0.5)
>>> norm(0,1).sf(zscore)
0.6716393567181147
我服从均值为 71、方差为 20.25 的正态分布。示例取自 "Heads first statistics".
当我将正态分布标准化为零均值时,我得到了正确的结果,但根据我对 scipy 和正态分布的理解,我应该得到非标准化分布的相同概率。
from scipy.stats import norm
import math
# prints 0.539337742276
print(norm(71, 20.25).sf(69))
zscore = (69-71) / math.sqrt(20.25)
print(norm(0,1).sf(zscore))
# prints 0.671639356718
请注意 norm
是用均值和 尺度 参数化的,而不是均值和平方尺度。因此,
>>> from scipy.stats import norm
>>> norm(71, pow(20.25,0.5)).sf(69)
0.6716393567181147
>>> zscore = (69-71) / pow(20.25,0.5)
>>> norm(0,1).sf(zscore)
0.6716393567181147