【问题标题】:Finding a probability density function that reproduces a histogram in Python在 Python 中找到重现直方图的概率密度函数
【发布时间】:2016-11-12 13:53:20
【问题描述】:

所以我实际拥有的所有数据都是直方图的图片,从中我可以得到高度和 bin 宽度、中值和一个 sigma 误差。

直方图偏斜,因此第 16 和第 84 分位数不对称。我发现中位数和误差可以用一个倾斜的高斯函数来复制,但是从我找到的 pdf 中得到的直方图很难匹配,无论我使用多少 bin 编号和 bin 宽度。

我知道我不可能准确地重新创建直方图,但我会对足够接近的东西感到非常满意。

我最好的想法是遍历倾斜高斯的可能参数,制作直方图,以某种方式量化差异(如所有点的高度差异)并找到最佳的。我认为这可能是一个非常漫长的过程,而且我很确定 scipy 中有一些东西可以更快地完成此操作。如果可能,请向我推荐任何有用的东西。

【问题讨论】:

  • 如果您发现了一个可能适合的分布,您可以将直方图归一化为密度,然后对该直方图进行参数的最小二乘拟合。然而,这远非最佳——仅使用直方图,您已经丢失了大量信息。

标签: python scipy histogram curve-fitting probability-density


【解决方案1】:

IMO 您最好的方法是将数据视为点并使用scipy.optimize.curve_fit 拟合函数

This post 也可能有帮助:

【讨论】:

    猜你喜欢
    • 2012-11-09
    • 1970-01-01
    • 2016-06-07
    • 2013-02-02
    • 2019-04-19
    • 2012-11-21
    • 1970-01-01
    • 1970-01-01
    • 2017-07-17
    相关资源
    最近更新 更多