So führen sie einen nemenyi-post-hoc-test in python durch


Der Friedman-Test ist eine nichtparametrische Alternative zur ANOVA mit wiederholten Messungen . Es wird verwendet, um zu bestimmen, ob ein statistisch signifikanter Unterschied zwischen den Mittelwerten von drei oder mehr Gruppen besteht, in denen in jeder Gruppe dieselben Probanden vorkommen.

Wenn der p-Wert des Friedman-Tests statistisch signifikant ist, können wir den Nemenyi-Post-hoc-Test durchführen, um genau zu bestimmen, welche Gruppen unterschiedlich sind.

Das folgende Schritt-für-Schritt-Beispiel zeigt, wie Sie den Nemenyi-Test in Python durchführen.

Schritt 1: Erstellen Sie die Daten

Angenommen, ein Forscher möchte wissen, ob die Reaktionszeiten von Patienten bei drei verschiedenen Medikamenten gleich sind. Um dies zu testen, maß er die Reaktionszeit (in Sekunden) von 10 verschiedenen Patienten auf jedes der drei Medikamente.

Wir können die folgenden drei Tabellen erstellen, die die Reaktionszeiten für jeden Patienten auf jedes der drei Medikamente enthalten:

 group1 = [4, 6, 3, 4, 3, 2, 2, 7, 6, 5]
group2 = [5, 6, 8, 7, 7, 8, 4, 6, 4, 5]
group3 = [2, 2, 5, 3, 2, 2, 1, 4, 3, 2]

Schritt 2: Führen Sie den Friedman-Test durch

Als nächstes führen wir den Friedman-Test mit der Funktion friedmanchisquare() aus der Bibliothek scipy.stats durch:

 from scipy import stats

#perform Friedman Test
stats. friedmanchisquare (group1, group2, group3)

FriedmanchisquareResult(statistic=13.3513513, pvalue=0.00126122012)

Der Friedman-Test verwendet die folgenden Null- und Alternativhypothesen:

Die Nullhypothese (H 0 ): Der Mittelwert jeder Population ist gleich.

Die Alternativhypothese: (Ha): Mindestens ein Populationsmittelwert unterscheidet sich von den anderen.

In diesem Beispiel beträgt die Teststatistik 13,35135 und der entsprechende p-Wert beträgt 0,00126 . Da dieser p-Wert kleiner als 0,05 ist, können wir die Nullhypothese zurückweisen, dass die durchschnittliche Reaktionszeit für alle drei Medikamente gleich ist.

Mit anderen Worten: Wir haben genügend Beweise, um zu dem Schluss zu kommen, dass die Art der verwendeten Medikamente statistisch signifikante Unterschiede in der Reaktionszeit verursacht.

Schritt 3: Führen Sie den Nemenyi-Test durch

Dann können wir den Nemenyi-Post-hoc-Test durchführen, um genau zu bestimmen, welche Gruppen unterschiedliche Mittelwerte haben.

Dazu müssen wir die scikit-posthocs-Bibliothek installieren:

 pip install scikit-posthocs

Als nächstes verwenden wir die Funktion posthoc_nemenyi_friedman() , um den Nemenyi-Post-Hoc-Test durchzuführen:

 import scikit_posthocs as sp
import numpy as np

#combine three groups into one array
data = np. array ([group1, group2, group3])

#perform Nemenyi post-hoc test
sp. posthoc_nemenyi_friedman ( data.T )

	0 1 2
0 1.000000 0.437407 0.065303
1 0.437407 1.000000 0.001533
2 0.065303 0.001533 1.000000

Hinweis: Wir mussten das Numpy-Array (data.T) transponieren, um den Post-hoc-Test korrekt durchzuführen.

Der Post-hoc-Test von Nemeyi gibt p-Werte für jeden paarweisen Mittelwertvergleich zurück. Aus dem Ergebnis können wir die folgenden p-Werte erkennen:

  • P-Wert von Gruppe 0 im Vergleich zu Gruppe 1: 0,4374
  • P-Wert von Gruppe 0 im Vergleich zu Gruppe 2: 0,0653
  • P-Wert von Gruppe 1 im Vergleich zu Gruppe 2: 0,0015

Bei α = 0,05 sind die einzigen beiden Gruppen, die statistisch signifikant unterschiedliche Mittelwerte aufweisen, Gruppe 1 und Gruppe 2.

Hinweis: Nemenyis Test hat die Gruppennummer von 1, 2, 3 in 0, 1, 2 umgewandelt. Die Gruppen in den Originaldaten, die sich signifikant unterscheiden, sind also die Gruppen 2 und 3.

Einen Kommentar hinzufügen

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