Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Can';t将泊松拟合到直方图中_Python_Scipy_Distribution_Poisson - Fatal编程技术网

Python Can';t将泊松拟合到直方图中

Python Can';t将泊松拟合到直方图中,python,scipy,distribution,poisson,Python,Scipy,Distribution,Poisson,我在这里看了很多例子,并尝试使用其他代码片段,但它们对我不起作用。我有4个数据集,但这里只包括一个。我的教授告诉我,数据似乎是泊松分布的,所以我试图将泊松分布拟合到数据的直方图中。这是我的密码: ######## Poisson fit ######## import numpy as np import matplotlib.pyplot as plt from scipy.optimize import curve_fit from scipy.special import factori

我在这里看了很多例子,并尝试使用其他代码片段,但它们对我不起作用。我有4个数据集,但这里只包括一个。我的教授告诉我,数据似乎是泊松分布的,所以我试图将泊松分布拟合到数据的直方图中。这是我的密码:

######## Poisson fit ########

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
from scipy.special import factorial

data = data59[4]
entries,bin_edges,patches = plt.hist(data59[4],60,[1,10],normed=True)
bin_middles = 0.5*(bin_edges[1:]+bin_edges[:-1])

def poisson(k, lamb):
    return np.exp(-lamb)*(lamb**k)/factorial(k)

popt,pcov = curve_fit(poisson,bin_middles,entries)

x = np.linspace(1,10,100)

plt.plot(x,poisson(x,*popt))

plt.show()

我尝试使用
scipy.stats
而不是
curve\u fit
在直方图顶部绘制其他分布,如normal和Rayleigh。这种方法之所以有效,是因为它们有一个scale参数,而scipy.stats.poisson却没有。结果显示,该分布与
曲线拟合
完全相同。我不知道如何解决这个问题。也许数据甚至不是泊松分布的

谢谢你的帮助

更新:数据是来自TXS 0506+056 blazar的IceCube数据。。第一列是修改后的朱利安日,最后一列是能源代理的日志。我使用的是最后一列。我对这些数据有无效的假设和替代性假设,并且正在使用最大似然估计(根据某种分布,在我的第一个案例中是泊松分布)来分析这些数据


另外,这里是我获得数据的地方:

直方图中显示的数据。泊松分布是一个计数分布(每单位时间或空间获得0,1,2,…观测值的概率是多少),它的支持度是正整数。您的直方图清楚地显示您有分数,因为尖峰在非整数位置是不同的非零高度。

如果您的数据是无限样本,它们将非常适合您的分布(如果它们确实是泊松分布),但由于它们的数量有限,您得到了这些结果。感谢您的帮助。为什么会这样?无限样本允许什么?我见过类似的代码,人们生成随机数据,直方图的拟合度很好,但这些不是无限样本。你对我可以用什么替代有什么建议吗?好的,让我们从头开始:在分布中,
y
值是分布密度。直方图的
y
值是多少?仅供参考:这只是随机样本的平均值。你可以用它代替
曲线拟合
@WarrenWeckesser当数据明显不满足泊松分布的最低要求时,为什么还要麻烦呢?很有趣。我以前读过你提供的页面,但我想我没有意识到这是关于整数值的。谢谢你的洞察力。