Chi-squareでp値を取得する必要があります。 私のプログラムの開発は、次のとおりです。python chisquareとChi-square値のテーブルを使用した結果が異なる
from scipy.stats import chisquare
c = chisquare([10,4,7,5],ddof=[0,1,2,3])
print(c)
結果は次のとおりです。
Power_divergenceResult(statistic=3.2307692307692308, pvalue=array([ 0.35739509, 0.19881419, 0.07226674, nan]))
私は(このサイトhttps://www.medcalc.org/manual/chi-square-table.phpから例えば)カイ二乗値のテーブルを使用したp値を取得しようとすると、結果が異なっています。 自由度= 1(ddof = 0)のpython p-valueを使用するこの例では、0.35739509ですが、表のp値は0.01です。 結果が異なる理由を説明してください。
p値を取得するために正確に何をすればよいですか? – LOGA
@LOGA scipy: 'x'と' df'を 'cdf'関数に渡し、結果から1を引いた値を取る必要があります(2番目のコード例を参照)。テーブル:あなたのdfに対応する行のxに最も近い値を見つけて、列の上からp値を取る。 (私はあなたの質問から値を使用する例を更新しました) – kazemakase
なぜ4つの値を返しますか? df = 1の場合、Pythonは[nan ... ... ...] – LOGA