[
https://issues.apache.org/jira/browse/MATH-1197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14284500#comment-14284500
]
Thomas Neidhart commented on MATH-1197:
---------------------------------------
The exactP method also seems to have a problem when comparing it with the
results from R.
Take this example:
{code}
double[] x = new double[] { 0, 0, 0, 0, 1 };
double[] y = new double[] { 0, 0, 1, 1, 2, 3 };
final KolmogorovSmirnovTest test = new KolmogorovSmirnovTest();
System.out.println("p=" + test.kolmogorovSmirnovTest(x, y, true));
System.out.println("D=" + test.kolmogorovSmirnovStatistic(x, y));
System.out.println("approximateP=" +
test.approximateP(test.kolmogorovSmirnovStatistic(x, y), x.length, y.length));
System.out.println("exactP=" +
test.exactP(test.kolmogorovSmirnovStatistic(x, y), x.length, y.length, false));
{code}
returns:
{noformat}
p=0.35714285714285715
D=0.46666666666666673
approximateP=0.5925028311389975
exactP=0.4155844155844156
{noformat}
R computes the following:
{noformat}
data: x and y
D = 0.4667, p-value = 0.5925
alternative hypothesis: two-sided
{noformat}
> Incorrect Kolmogorov–Smirnov Statistic for two samples
> -------------------------------------------------------
>
> Key: MATH-1197
> URL: https://issues.apache.org/jira/browse/MATH-1197
> Project: Commons Math
> Issue Type: Bug
> Affects Versions: 3.4.1
> Environment: Ubuntu 14.04
> Reporter: Danaja Thiyunuwan Maldeniya
> Attachments: MATH-1197.patch
>
>
> kolmogorovSmirnovTest(double[],double[]) against the samples given below
> gives 5.699107852308316E-12 instead of 0.9793 (approx.) Traced the issue to
> kolmogorovSmirnovStatistic(double[],double[]) which gives 0.49507389162561577
> instead of 0.064 (verified with ks.test in R and JDistlib)
> double[] x =
> {0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,2.202653,2.202653,2.202653
>
> ,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653
>
> ,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653
>
> ,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,3.181199,3.181199,3.181199,3.181199,3.181199,3.181199,3.723539
>
> ,3.723539,3.723539,3.723539,4.383482,4.383482,4.383482,4.383482,5.320671,5.320671,5.320671,5.717284,6.964001,7.352165
>
> ,8.710510,8.710510,8.710510,8.710510,8.710510,8.710510,9.539004,9.539004,
> 10.720619, 17.726077, 17.726077, 17.726077, 17.726077
> ,22.053875 ,23.799144 ,27.355308 ,30.584960 ,30.584960
> ,30.584960, 30.584960, 30.751808};
> double[] y =
> {0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000
>
> ,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,2.202653
>
> ,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,2.202653,3.061758,3.723539,5.628420,5.628420,5.628420,5.628420
> ,5.628420,6.916982,6.916982,6.916982, 10.178538, 10.178538,
> 10.178538, 10.178538, 10.178538 };
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)