Kolmogorov-Smirnov 分布について(訳)

オリジナルのポスト:https://www.wavemetrics.com/forum/general/kolmogorov-smirnov-distribution

Igor の StatsKSTest は、2つの連続分布を比較するための Kolmogorov-Smirnov(コルモゴロフ=スミルノフ)[KS] フィッティング検定を実行します。このコマンドは 2000 年代初頭に実装されたため、出力される臨界値と p 値はレガシーアルゴリズムに基づいています。残念ながら、古いアルゴリズムには修正すべき既知の欠陥がいくつか存在します。このトピックについては以下で詳細に議論されています:

Simard, R., & L’Ecuyer, P. (2011). Computing the Two-Sided Kolmogorov–Smirnov DistributionJournal of Statistical Software, 39(11), 1–18.

https://doi.org/10.18637/jss.v039.i11

https://www.iro.umontreal.ca/~lecuyer/myftp/papers/ksdist.pdf

分布関数の計算の複雑さについて、この論文の図2に優れた概観が示されています。

図2: (n, x) の関数として、N×[0, 1] の各領域において示される Fn(x) の計算(または近似)方法の選択と、Fn(x) の最小有効桁数

以下より再現(CC‑BY ライセンスに基づく):

Simard, R., & L’Ecuyer, P. (2011). Computing the Two-Sided Kolmogorov–Smirnov Distribution. Journal of Statistical Software, 39(11), 1–18

https://doi.org/10.18637/jss.v039.i11

この領域分割は、本論文に付属するCコードで実装されています。下記より、公開されたコードから派生した Igor プロシージャをダウンロードできます。変換には少し修正が必要であり、これらはプロシージャの先頭にリストされています。プロシージャコードはAs-Isで提供され、元の著作権およびライセンス条項が引き続き適用されます。

このプロシージャは次の関数をサポートします:

KScdf(int n,double x) - returns the Kolmogorov-Smirnov CDF.
getKSCritical(variable n,variable alpha) - returns the critical value for the Kolmogorov-Smirnov distribution.

コメントや質問はサポートまでお送りください:support@wavemetrics.com

プロシージャ:https://www.wavemetrics.com/sites/default/files/2026-01/KolmogorovSmirnovDist.ipf