# How to interpret p-value of Kolmogorov-Smirnov test (python)?

I have Two samples that I want to test (using python) if they are drawn from the same distribution. To do that I use the statistical function ks_2samp from scipy.stats. It returns 2 values and I find difficulties how to interpret them. Help please!

As Stijn pointed out, the k-s test returns a D statistic and a p-value corresponding to the D statistic. The D statistic is the absolute max distance (supremum) between the CDFs of the two samples. The closer this number is to 0 the more likely it is that the two samples were drawn from the same distribution. Check out the Wikipedia page for the k-s test. It provides a good explanation: https://en.m.wikipedia.org/wiki/Kolmogorov%E2%80%93Smirnov_test

The p-value returned by the k-s test has the same interpretation as other p-values. You reject the null hypothesis that the two samples were drawn from the same distribution if the p-value is less than your significance level. You can find tables online for the conversion of the D statistic into a p-value if you are interested in the procedure.

• Thank you for your answer. In fact, I know the meaning of the 2 values D and P-value but I can't see the relation between them. How can I define the significance level? Can you give me a link for the conversion of the D statistic into a p-value?
– meri
Commented May 2, 2013 at 13:22
• Sure, table for converting D stat to p-value: soest.hawaii.edu/wessel/courses/gg313/Critical_KS.pdf Commented May 2, 2013 at 16:19
• @CrossValidatedTrading: Your link to the D-stat-to-p-value table is now 404. Commented Dec 4, 2015 at 17:49
• @CrossValidatedTrading Should there be a relationship between the p-values and the D-values from the 2-sided KS test? In some instances, I've seen a proportional relationship, where the D-statistic increases with the p-value. That seems like it would be the opposite: that two curves with a greater difference (larger D-statistic), would be more significantly different (low p-value)... Commented Nov 29, 2016 at 0:47
• What if my KS test statistic is very small or close to 0 but p value is also very close to zero? Are the two samples drawn from the same distribution ? Commented Mar 29, 2020 at 5:02

When doing a Google search for ks_2samp, the first hit is this website. On it, you can see the function specification:

This is a two-sided test for the null hypothesis that 2 independent samples are drawn from the same continuous distribution.

Parameters :
a, b : sequence of 1-D ndarrays
two arrays of sample observations assumed to be drawn from a continuous distribution, sample sizes can be different

Returns :
D : float,  KS statistic
p-value : float, two-tailed p-value

• The a and b parameters are my sequence of data or I should calculate the CDFs to use ks_2samp?
– meri
Commented May 2, 2013 at 13:41
• @meri: there's an example on the page I linked to. Commented May 2, 2013 at 13:54