Iは、平均でポアソン分布を作成する要素の2数は10000であるが最小値1とテール値140を有し、これまで私は分scipy.statsでポアソン分布のテール値を指定する方法は?
stats.poisson.rvs(2, loc = 1,size=10000)
生成されます
どのように私はそれが140の代わりに、11
Iは、平均でポアソン分布を作成する要素の2数は10000であるが最小値1とテール値140を有し、これまで私は分scipy.statsでポアソン分布のテール値を指定する方法は?
stats.poisson.rvs(2, loc = 1,size=10000)
生成されます
どのように私はそれが140の代わりに、11
2に等しい平均が140以上であるとポアソン分布のうちサンプルはあなただけの10000サンプルのうちのいずれかを取得しないことほど小さいことをチャンスに終了することができます。
実際、ポアソン分布は、唯一のパラメータλ及び平均値もλに等しい
P(x=k) = λ^k * exp(-λ)/k!
ように定義された確率質量関数を有しています。その後、λ= 2であれば
P(x=140) = 7.7e-199
10000個のサンプルがある場合ので、10000のうち140で少なくとも1つのサンプル が存在することになる可能性が7.7e-195よりも小さいであろう。これは、あなたがこれが生涯に起こるとは期待できないほど小さい数字です。
140以上のλ= 2つの嘘とポアソン分布のうちサンプルあなたはあなたが持っているであろうそのため
P(x>=22) = 1 - scipy.stats.poisson.cdf(21,2) = 5.5e-16
もチャンスことを確認するためにscipy.stats.poisson.cdf
を使用できる確率を計算するために少し困難です2100を超える10000のうちの1つのサンプルは5.5e-12未満である。同じ方法でP(x>=140)
を計算すると、中間結果の浮動小数点の丸めによって0が返されます。あなたは分布が等しい2.0を意味したい、と重い尾が140万のサンプルにまで到達した場合
結論
あなたはポアソン分布は異なるが必要です。あなたはそれがはっきりと見える
scipy.stats.poisson.rvs(2,size=10000)
と
numpy.rint(scipy.stats.pareto.rvs(2,size=10000))
からパラメータbここで= 2
とscipy.stats.pareto
が10000個のランダムサンプルの比較で、パレート分布を検討することもでき同じ平均を持つパレート分布は、より重い尾を持っています。
は、参考のためにプロットのコードは
import matplotlib.pyplot as plt
import scipy.stats
import numpy as np
pareto_x = np.rint(scipy.stats.pareto.rvs(2,size=10000))
poisson_x = scipy.stats.poisson.rvs(2,size=10000)
plt.figure(figsize=(8,4))
plt.subplot(121)
plt.title("Poisson distribution, a = 2")
plt.xlabel("sample number")
plt.ylabel("sample value")
plt.axis([0,10000,0,180])
plt.plot(range(0,10000),poisson_x,"o")
plt.subplot(122)
plt.axis([0,10000,0,180])
plt.title("Pareto distribution, b = 2")
plt.xlabel("sample number")
plt.plot(range(0,10000),pareto_x,"o")
plt.subplots_adjust(hspace=0.4,bottom=0.2)
plt.savefig("poisson_pareto.png")
これはあなたが述べ –
@AyaAbdelsalamを作成するために使用されるコードを投稿してくださいすることができ非常に便利です下回っていますポアソン分布は最大値を持たない。あなたが言うように、問題は、すべてのより高い値が「十分に低い」確率を有するように「最大」を定義するために「十分に低い」と考える可能性がどれくらい低いかということだけである。 –
おそらく価値がコードでポストを更新このグラフ – BrenBarn