Le test de Kolmogorov-Smirnov est un test d’hypothèse utilisé pour décider si un échantillon suit une loi de probabilité donnée ou si deux échantillons suivent la même loi.

Sous R on peut réaliser ce test avec la fonction ks.test()



#on crée des échantillons

a<-rnorm(100,mean=0,sd=1)

b<-rgamma(100,shape=1,rate=0.8)

c<-rnorm(50,mean=0,sd=1)

#a et b proviennent-ils de la même loi?

ks.test(a,b)#p=7.5e-11 on rejette l'hypothèse nulle

#a et c?

ks.test(a,c)#p=0.35 on accepte l'hypothèse nulle

#a provient-il d'une loi gamma avec 3 comme paramètre de forme et 2 pour le taux?

ks.test(a,"pgamma",3,2)#p value très faible on rejette l'hypothèse

#a provient-il d'une loi normale?

ks.test(a,"pnorm")#p=0.13 on accepte l'hypothèse


Comme pour tous les tests, faites bien attention à ce que veut réellement dire ce test, prenez du recul sur la notion de p-value et ne basez pas vos analyses sur ce test seul !!!