So führen Sie Dunns Test in Python durch

Von Fabian
Kategorie: Python
Tags: ANOVA
Lesezeit: 3 Minuten

Ein Kruskal-Wallis-Test wird verwendet, um festzustellen, ob zwischen den Medianwerten von drei oder mehr unabhängigen Gruppen ein statistisch signifikanter Unterschied besteht oder nicht. Es wird als nicht parametrisches Äquivalent der einfaktorielle ANOVA angesehen.

Wenn die Ergebnisse eines Kruskal-Wallis-Tests statistisch signifikant sind, ist es angebracht, den Dunn-Test durchzuführen, um genau zu bestimmen, welche Gruppen unterschiedlich sind.

In diesem Tutorial wird erklärt, wie Sie Dunns Test in Python durchführen.

Beispiel: Dunns Test in Python

Die Forscher wollen wissen, ob drei verschiedene Düngemittel zu unterschiedlichem Pflanzenwachstum führen. Sie wählen zufällig 30 verschiedene Pflanzen aus und teilen sie in drei 10er-Gruppen auf, wobei sie jeder Gruppe einen anderen Dünger zuführen. Am Ende eines Monats messen sie die Höhe jeder Pflanze.

Bei der Durchführung eines Kruskal-Wallis-Tests stellen sie fest, dass der Gesamt-p-Wert statistisch signifikant ist, was bedeutet, dass das mittlere Wachstum in allen drei Gruppen nicht gleich ist. Als nächstes führen sie Dunns Test durch, um genau zu bestimmen, welche Gruppen unterschiedlich sind.

Um Dunns Test in Python durchzuführen, können wir die Funktion posthoc_dunn() aus der Bibliothek scikit-posthocs verwenden.

Der folgende Code zeigt, wie diese Funktion verwendet wird:

Schritt 1: Installieren Sie Scikit-Posthocs.

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

pip install scikit-posthocs

Schritt 2: Führen Sie Dunns Test durch.

Als nächstes können wir die Daten erstellen und Dunns Test durchführen:

# Geben Sie das Wachstum der 10 Pflanzen in jeder Gruppe an
group1 = [7, 14, 14, 13, 12, 9, 6, 14, 12, 8]
group2 = [15, 17, 13, 15, 15, 13, 9, 12, 10, 8]
group3 = [6, 8, 8, 9, 5, 14, 13, 8, 10, 9]
data = [group1, group2, group3]

# Führen Sie Dunns Test mit einer Bonferonni-Korrektur für die p-Werte durch
import scikit_posthocs as sp
sp.posthoc_dunn(data, p_adjust = 'bonferroni')

               1           2           3
1   1.000000    0.550846    0.718451
2   0.550846    1.000000    0.036633
3   0.718451    0.036633    1.000000

Beachten Sie, dass wir eine Bonferroni-Korrektur für die p-Werte verwendet haben, um die Family Wise Error Rate zu steuern. Andere mögliche Optionen für das Argument p_adjust sind jedoch:

  • sidak
  • holm-sidak
  • simes-hochberg
  • hommel
  • fdr_bh
  • fdr_by
  • fdr_tsbh

Weitere Informationen zu diesen p-Wert-Anpassungsmethoden finden Sie in der Dokumentation.

Schritt 3: Interpretieren Sie die Ergebnisse.

Aus den Ergebnissen von Dunns Test können wir Folgendes beobachten:

  • Der angepasste p-Wert für die Differenz zwischen Gruppe 1 und Gruppe 2 beträgt 0,550846.
  • Der angepasste p-Wert für die Differenz zwischen Gruppe 1 und Gruppe 3 beträgt 0,718451.
  • Der angepasste p-Wert für die Differenz zwischen Gruppe 2 und Gruppe 3 beträgt 0,036633.

Somit sind die einzigen zwei Gruppen, die sich bei α = 0,05 statistisch signifikant unterscheiden, die Gruppen 2 und 3.

Zusätzliche Ressourcen

Eine Einführung in Dunns Test für mehrere Vergleiche
Wie man Dunns Test in R durchführt

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: