因为还有一个问题,我正在建设我的优质question。如何使用概率分布对象计算一个点的概率?
我已经在Matlab中适合我的数据向量的正态分布:PD = fitdist(data,'normal')
。现在我有一个新的数据点(例如x = 0.5),我想计算它的概率。
使用cdf(PD,x)
将不起作用,因为它给出了该点小于或等于x(但不完全是x)的概率。使用pdf(PD,x)
只给出了密度,但不是概率,所以它可以大于1。
我该如何计算概率?
因为还有一个问题,我正在建设我的优质question。如何使用概率分布对象计算一个点的概率?
我已经在Matlab中适合我的数据向量的正态分布:PD = fitdist(data,'normal')
。现在我有一个新的数据点(例如x = 0.5),我想计算它的概率。
使用cdf(PD,x)
将不起作用,因为它给出了该点小于或等于x(但不完全是x)的概率。使用pdf(PD,x)
只给出了密度,但不是概率,所以它可以大于1。
我该如何计算概率?
比方说,你有一个随机变量X
遵循均值mu
和标准偏差s
正态分布。
令F为正态分布的累积分布函数,平均值为mu
,标准差为s
。随机变量X
落在a
和b
之间的概率,即P(a < x < = b)= F(b)-F(a)。
在Matlab代码:
P_a_b = normcdf(b, mu, s) - normcdf(a, mu, s);
注意:观察到的概率X是恰好等于0.5(或任何特定的值)是零!一系列结果具有正概率,但个别结果总和不足的概率为零。
如果分布是连续的,那么任何点x
的概率都是0,几乎可以通过连续分布的定义。如果分布是不连续的,而且,该分布的支持是整数集的子集,那么对于任意整数x的概率是
cdf(PD,x) - cdf(PD,x-1)
更一般地,对于任何随机变量X,其发生在整数值,概率密度函数f(x)
和累积分布F(x)
由
f(x) = F(x) - F(x-1)
右手边可以被解释为一个离散的衍生物相关的,因此这是以下事实的直接模拟,在连续的情况下的PDF是cdf的衍生物。
我不确定matlab是否有更直接的方式来获得您的情况下的概率质量函数,而不是像通过这样的cdf。
在连续的情况下,你的问题没有多大意义,因为正如我上面所说的,概率是0.在这种情况下非零概率是附加到区间而不是单独点的东西。你仍然可能想问一下在x
附近获得价值的概率 - 但是你必须决定“near”的意思。例如,如果x
是一个整数,那么您可能想知道获得四舍五入为x的值的概率。这将是:
cdf(PD, x + 0.5) - cdf(PD, x - 0.5)
谢谢你的回答。概率论不是我的力量。 ;)在我的情况下分布是连续的(正态分布)。 RHS和PMF是什么意思?我认为你的解释是针对离散分布的,但我怎样才能适应它的连续分布? – machinery
@machinery您真的应该阅读如何使用概率密度函数和/或累积分布函数来计算各种结果的概率。 使用离散分布,可以总结各种较小的分量事件发生较大事件的概率。 (例如模具卷X为3或更小的概率是概率P(X = 1)+ P(X = 2)+ P(X = 3))。对于连续分布,类似于将概率质量功能是集成概率密度函数。整合基本上是总结。 –
@MatthewGunn对概率密度函数进行积分正是我认为的Matlab的pdf函数,但这可能会变得比不再是真实概率的函数大。 – machinery
非常感谢,但我最初想要的是P(X = a),这意味着a = b它将给出F(b) - F(a)= F(a) - F(a)= 0 – machinery
@machinery yes , 那是对的。这就是为什么没有人要求P(X = a)用于正态分布或大多数其他连续分布(可能除了在测试或作业问题上,以测试理解)。对于具有连续概率密度函数的任意随机变量X,P(X = a)= 0。 –
好的,但是在(高斯)朴素贝叶斯分类器中,你为每个特征拟合了一个正态分布,然后你必须计算P(X = a)来得到一个新的数据点...我可以使用这样的PDF值一个案例?当然pdf可以比一个更大,但更高的pdf值意味着更高的概率(密度)。 – machinery