python - 正态分布概率密度可以大于 1 吗?...基于 python 代码检查

标签 python statistics probability

我有一个问题: 给定均值和方差,我想使用正态分布作为概率基础来计算样本的概率。 这些数字是:

mean = -0.546369
var = 0.006443
curr_sample = -0.466102

prob = 1/(np.sqrt(2*np.pi*var))*np.exp( -( ((curr_sample - mean)**2)/(2*var) ) )

我得到一个大于 1 的概率!我得到 prob = 3.014558...

这是什么原因造成的?方差太小的事实搞砸了?这是公式的完全合法输入,应该给出不大于 1 的小值!有什么建议吗?

最佳答案

好的,你计算的不是概率,而是概率密度(可能大于1)。为了获得 1,您必须像这样对正态分布进行积分:

import numpy as np
mean = -0.546369
var = 0.006443
curr_sample = np.linspace(-10,10,10000)

prob = np.sum( 1/(np.sqrt(2*np.pi*var))*np.exp( -( ((curr_sample - mean)**2)/(2*var) ) ) * (curr_sample[1]-curr_sample[0]) )
print prob

女巫结果

0.99999999999961509

关于python - 正态分布概率密度可以大于 1 吗?...基于 python 代码检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32074115/

相关文章:

sql - sql server中的加权标准差没有聚合错误

machine-learning - 纠正收集数据中的已知偏差

r - R中的直方图

python - 如何在 python 中拆分运算符和操作数

python - Django CSRF验证失败

python - Python 中的这个(简单?)表达式是什么意思?功能( self )(*参数)

powershell - 在 PowerShell 中查找数据集的统计模式

python - 在Python中使用动态时间规整(DTW)进行时间序列相关

matlab - 使用matlab函数 "pdf"

python - 在 Plotly 或 Python 中的 Bokeh 中的 map 上绘制散点饼图