2012-10-29 102 views
0

該程序應該在繪圖圖上放置泊松分佈。但是當我運行它沒有出現。我試圖重新排列代碼,但它告訴我,x和y不在同一維...直方圖上的泊松分佈

有人可以弄明白嗎?

from numpy import * 
from scipy.special import gamma 
import pylab 
import matplotlib.pyplot 
mu = 70 
counts = range(45,101,1) 
for counts in range(46,96,1): 

p = exp(-mu) * mu**counts/gamma(counts +1) 
pylab.plot(counts,p) 


pylab.show() 

回答

0

您正在使用伽瑪功能...我相信你應該用階乘相反,由於泊松分佈是P = e^(-L) * L^k/k!

你可能已經抓住了伽瑪功能與表達的Gamma分佈,其與泊松分佈有關。

+0

啊,沒關係。我對SciPy不熟悉......我看到伽瑪(k + 1)與階乘(k)相同。 – OrangeWombat

0

您使用您的 'X' 變量作爲迭代變量:

counts = range(45,101,1) 
print "'counts' before for loop:",counts 
for counts in range(46,96,1): 
    pass 
print "'counts' after for loop:",counts 

計數已重新分配至95