繁体   English   中英

python scipy.stats pdf和期望函数

[英]python scipy.stats pdf and expect functions

我想知道是否有人可以解释scipy.stats中的以下功能:

rv_continuous.expect
rv_continuous.pdf

我已经阅读了文档,但仍然感到困惑。

这是我的任务,理论上很简单,但是我仍然对这些功能的作用感到困惑。

因此,我有16383个值的区域列表。 我想找到可变区域取较小值(称为“ inf”)和较大值“ sup”之间的任何值的可能性。

所以,我想的是:

scipy.stats.rv_continuous.pdf(a) #a being the list of areas
scipy.stats.rv_continuous.expect(pdf, lb = inf, ub = sup)

这样我就可以确定任何区域在sup和inf之间。

有人能通过简单的方式解释这些函数的作用以及有关如何计算inf和sup之间的f(a)积分的任何提示吗?

谢谢

布莱斯

rv_continuous是所有中实现的概率分布的一个基类scipy.stats 您不会自己在rv_continuous上调用方法。

您的问题尚不清楚您要做什么,因此我假设您有16383个数据点数组,这些数据点是从某种未知的概率分布中得出的。 从原始数据中,您将需要估计累积分布,在supinf值处找到该累积分布的值,然后减去以找出从未知分布中提取值的可能性。

有多种方法可以根据数据估算未知分布,具体取决于您要进行多少建模和要进行多少假设。 在频谱更复杂的一端,您可以尝试将标准参数概率分布之一拟合到数据中。 例如,如果您怀疑数据是对数正态分布的,则可以使用scipy.stats.lognorm.fit(data, floc=0)查找适合数据的对数正态分布的参数。 然后,您可以使用scipy.stats.lognorm.cdf(sup, *params) - scipy.stats.lognorm.cdf(inf, *params)来估计该值介于这些值之间的可能性。

中间是分布估计的非参数形式,例如直方图和核密度估计。 例如, scipy.stats.gaussian_kde(data).integrate_box_1d(inf, sup)是使用未知分布的高斯核密度估计进行此估计的简便方法。 但是,内核密度估计并不总是合适的,需要进行一些调整才能正确。

您可以做的最简单的事情就是计算介于infsup之间的数据点的数量,然后除以您拥有的数据点的总数。 这仅适用于较大数量的点(具有的点)以及在数据尾部距离不太远的边界。

累积密度函数可能会给您您想要的。 那么介于两个值之间的概率PP(inf < area < sup) = cdf(sup) - cdf(inf)

这里这里都有关于概率的教程,它们都是相关的。 pdf是概率的“密度”。 它们必须大于零且总和为1。我认为它表示事物发生的可能性。 期望是对平均值概念的概括。

E[x] = sum(x.P(x))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM