Kolmogorov-smirnov-test in r (mit beispielen)


Mit dem Kolmogorov-Smirnov-Test wird getestet, ob eine Stichprobe aus einer bestimmten Verteilung stammt oder nicht.

Um einen Kolmogorov-Smirnov-Test mit einer oder zwei Stichproben in R durchzuführen, können wir die Funktion ks.test() verwenden.

Dieses Tutorial zeigt ein Beispiel für die praktische Verwendung dieser Funktion.

Beispiel 1: Eine Kolmogorov-Smirnov-Testprobe

Angenommen, wir haben die folgenden Beispieldaten:

 #make this example reproducible
seed(0)

#generate dataset of 100 values that follows a Poisson distribution with mean=5
data <- rpois(n= 20 , lambda= 5 )

Verwandt: Eine Anleitung zu dpois, ppois, qpois und rpois in R

Der folgende Code zeigt, wie man an dieser Stichprobe von 100 Datenwerten einen Kolmogorov-Smirnov-Test durchführt, um zu bestimmen, ob sie aus einer Normalverteilung stammen:

 #perform Kolmogorov-Smirnov test
ks.test(data, “ pnorm ”)

	One-sample Kolmogorov–Smirnov test

data:data
D = 0.97725, p-value < 2.2e-16
alternative hypothesis: two-sided

Aus dem Ergebnis können wir ersehen, dass die Teststatistik 0,97725 beträgt und der entsprechende p-Wert 2,2e-16 beträgt. Da der p-Wert kleiner als 0,05 ist, lehnen wir die Nullhypothese ab. Wir haben genügend Beweise dafür, dass die Stichprobendaten nicht aus einer Normalverteilung stammen.

Dieses Ergebnis sollte nicht überraschen, da wir die Beispieldaten mit der Funktion rpois() generiert haben, die Zufallswerte generiert, die einerPoisson-Verteilung folgen.

Beispiel 2: Kolmogorov-Smirnov-Test mit zwei Stichproben

Nehmen wir an, wir haben die folgenden zwei Beispieldatensätze:

 #make this example reproducible
seed(0)

#generate two datasets
data1 <- rpois(n= 20 , lambda= 5 )
data2 <- rnorm( 100 )

Der folgende Code zeigt, wie ein Kolmogorov-Smirnov-Test für diese beiden Stichproben durchgeführt wird, um festzustellen, ob sie aus derselben Verteilung stammen:

 #perform Kolmogorov-Smirnov test
ks.test(data1, data2)

	Two-sample Kolmogorov–Smirnov test

data: data1 and data2
D = 0.99, p-value = 1.299e-14
alternative hypothesis: two-sided

Aus dem Ergebnis können wir ersehen, dass die Teststatistik 0,99 beträgt und der entsprechende p-Wert 1,299e-14 beträgt. Da der p-Wert kleiner als 0,05 ist, lehnen wir die Nullhypothese ab. Wir haben genügend Beweise dafür, dass die beiden Beispieldatensätze nicht aus derselben Verteilung stammen.

Dieses Ergebnis sollte auch nicht überraschen, da wir Werte für die erste Stichprobe mithilfe der Poisson-Verteilung und Werte für die zweite Stichprobe mithilfe derNormalverteilung generiert haben.

Zusätzliche Ressourcen

So führen Sie einen Shapiro-Wilk-Test in R durch
So führen Sie einen Anderson-Darling-Test in R durch
So führen Sie multivariate Normalitätstests in R durch

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert