将泊松分布拟合到数据中

时间:2016-07-07 15:28:47

标签: matlab curve-fitting poisson

我绘制了一个直方图,并希望将泊松分布拟合到直方图中。为此,我将x和y直方图坐标向量传递给poissfit()函数以估计lambda。

例如,这就是我所做的:

expecteddata = cat(2,x,y)
[l,lci] = poissfit(expecteddata)

我的输出如下:

l =

   44.3766    0.0130


lci =

   42.8887    0.0003
   45.8645    0.0724

我假设我对绘图感兴趣的lambda是0.013(我认为我的lambda非常小,因为我的直方图是频率直方图)。我使用以下方法绘制泊松pdf:

x = 0:50
y = poisspdf(x,0.013);
plot(x,y,'r')

我得到了叠加的情节:

enter image description here

然而,我觉得这个合适的分布看起来有点奇怪。它看起来并不像“泊松”那样。有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:2)

“我绘制了一个直方图,并希望将泊松分布拟合到直方图中。”

据我所知,您需要将泊松分布拟合到现有的测量数据直方图中。我相信你可以使用fitdist()函数。

例如,如果您的数据是x

[n,bin]=hist(x,100);
m=n/trapz(bin,n);
bar(bin,m,'w');
hold on
pd=fitdist(x,'poisson');
y=pdf(pd,bin);
plot(bin,y,'k');
hold off;

会给你一个直方图,其上有一条泊松分布曲线。