私はPython spark-mlで正常性テストを行っていましたが、私が何を見たのかはバグです。Kolmogorov Smirnov Spark(Python)でのテストは機能しませんか?
ここにセットアップがあります。データセットは正規化されています(範囲-1、1)。
私はヒストグラムを行うと、私は明らかにデータが正常でないことがわかります。
>>> prices_norm.histogram(10)
([-1.0, -0.8, -0.6, -0.4, -0.2, 0.0, 0.2, 0.4, 0.6, 0.8, 1.0],
[226, 269, 119, 95, 52, 26, 8, 2, 2, 5])
私はKolmgorov-Smirnov検定を実行すると、私は次のような結果を得る:
>>> testResults = Statistics.kolmogorovSmirnovTest(prices_norm, "norm")
>>> print testResults
Kolmogorov-Smirnov test summary:
degrees of freedom = 0
statistic = 0.46231145770077375
pValue = 1.742039845709087E-11
Very strong presumption against null hypothesis: Sample follows theoretical distribution.
Kolmgorov-Smirnov検定は、帰無仮説(H0)を次のように定義します。データは指定された分布(http://www.itl.nist.gov/div898/handbook/eda/section3/eda35g.htm)に従います。
この場合、p値は非常に低いので、帰無仮説を棄却する必要があります。これは明らかに正常ではないので、理にかなっています。
なぜ、その後、それは言うん:
Sample follows theoretical distribution
は、この間違っていないですか?サンプルが理論的な分布に従わないと言ってはいけませんか?何か不足していますか?
私は 'サンプルは理論的な分布に従っていると思います.'では帰無仮説を再記述しています。 –
データが実際に正規分布に従っている場合の出力は何ですか? –
@siwica、あなたは正しいです、それはただ帰無仮説を再演していただけです。 –