私は、シミュレーションされたサンプルから3自由度のカイ二乗分布のpdfを再構築しようとしています。私のpythonコードは次のとおりです。Pythonを使ってカイ二乗分布のpdfを表示
import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as plt
norm = stats.norm(0, 1)
x1 = [x * x for x in np.random.randn(1000)]
x2 = [x * x for x in np.random.randn(1000)]
x3 = [x * x for x in np.random.randn(1000)]
f = x1 + x2 + x3
plt.hist(f, 100)
plt.show()
結果はこれでした。もちろん
これは間違っています。 Wikipediaに示されているように、自由度が3のカイ二乗分布のpdfは、ゼロから最初に上に移動し、後で下に行くべきであり、何かが私のように登ることはありません。私のコードに何か問題はありますか?私が使用される式は以下の通りであった:
Q = X1^2 +×2^2 + X3^X1、X2およびX3は、独立し、標準正規確率変数で2
。
あなたの用語に注意してくださいました!定義によると、カイ2乗確率変数の正の平方根であるカイ分布が存在する。あなたが自由に言及するとき、正しい用語は自由度です。あなたのコードが3自由度のカイ2乗分布を生成しているように見えます。 –
@MichaelChernick提供されたヒストグラムは、OPによって気づかれたように、3dfのカイ2乗分布を示していません。アプローチは正しいですし、正しい分布を返さなければなりませんが、コードに何らかのバグがあるはずです(ただし、提供されたコードでは表示されませんが、テストしませんでした)。 – Tim
私はOPが$ \ chi^2 $を参照していると思います。ポストの一番下にある数式を参照してください。 – utobi