Eine einfaktorielle ANOVA wird verwendet, um zu bestimmen, ob es einen statistisch signifikanten Unterschied zwischen den Mittelwerten von drei oder mehr unabhängigen Gruppen gibt oder nicht.
Das folgende Beispiel bietet …
Eine einfaktorielle ANOVA wird verwendet, um zu bestimmen, ob es einen signifikanten Unterschied zwischen den Mittelwerten von drei oder mehr unabhängigen Gruppen gibt oder nicht.
Eine der Annahmen einer einfaktorielle ANOVA ist, dass die Varianzen der Populationen, aus denen die Proben stammen, gleich sind.
Eine der häufigsten Methoden, um dies zu testen, ist die Verwendung eines Brown-Forsythe-Tests , bei dem es sich um einen statistischen Test handelt, bei dem die folgenden Hypothesen verwendet werden:
Wenn der p-Wert des Tests unter einem Signifikanzniveau liegt (z. B. α = 0,05), lehnen wir die Nullhypothese ab und schließen daraus, dass die Varianzen zwischen den verschiedenen Populationen nicht gleich sind.
Dieses Tutorial enthält ein schrittweises Beispiel für die Durchführung eines Brown-Forsythe-Tests in R.
Angenommen, wir möchten wissen, ob drei verschiedene Trainingsprogramme zu unterschiedlichen Gewichtsverlusten führen.
Um dies zu testen, rekrutieren wir 90 Personen und weisen jedem zufällig 30 zu, um jedes Programm zu verwenden. Wir messen dann den Gewichtsverlust jeder Person nach einem Monat.
Der folgende Datensatz enthält Informationen darüber, wie viel Gewicht Menschen bei jedem Programm verloren haben:
#Machen Sie dieses Beispiel reproduzierbar
set.seed(0)
#Dataframe erstellen
data <- data.frame(program = as.factor(rep(c("A", "B", "C"), each = 30)),
weight_loss = c(runif(30, 0, 3),
runif(30, 0, 5),
runif(30, 1, 7)))
# Die ersten sechs Zeilen des Dataframes anzeigen
head(data)
# program weight_loss
#1 A 2.6900916
#2 A 0.7965260
#3 A 1.1163717
#4 A 1.7185601
#5 A 2.7246234
#6 A 0.6050458
Bevor wir einen Brown-Forsythe-Test durchführen, können wir Boxplots erstellen, um die Varianz des Gewichtsverlusts für jede Gruppe zu visualisieren:
boxplot(weight_loss ~ program, data = data)
Wir können auch die Varianz des Gewichtsverlusts in jeder Gruppe berechnen:
#Laden des dplyr-Packages
library(dplyr)
#Berechnen Sie die Varianz des Gewichtsverlusts nach Gruppen
data %>%
group_by(program) %>%
summarize(var=var(weight_loss))
# A tibble: 3 x 2
program var
1 A 0.819
2 B 1.53
3 C 2.46
Wir können sehen, dass die Varianzen zwischen den Gruppen unterschiedlich sind, aber um festzustellen, ob diese Unterschiede statistisch signifikant sind, können wir den Brown-Forsythe-Test durchführen.
Um einen Brown-Forsythe-Test in R durchzuführen, können wir die Funktion bf.test() aus dem Paket onewaytests verwenden:
#Laden des onewaytests Packages
library(onewaytests)
#Brown-Forsythe-Test durchführen
bf.test(weight_loss ~ program, data = data)
Brown-Forsythe Test (alpha = 0.05)
-------------------------------------------------------------
data: weight_loss and program
statistic : 30.83304
num df : 2
denom df : 74.0272
p.value : 1.816529e-10
Result : Difference is statistically significant.
-------------------------------------------------------------
Der p-Wert des Tests beträgt weniger als 0,000, und wie die Ausgabe erklärt, sind die Unterschiede in den Varianzen zwischen den drei Gruppen statistisch signifikant.
Wenn Sie die Nullhypothese des Brown-Forsythe-Tests nicht ablehnen, können Sie eine einfaktorielle ANOVA für die Daten durchführen.
Wenn Sie jedoch die Nullhypothese ablehnen, bedeutet dies, dass die Annahme gleicher Varianzen verletzt wird. In diesem Fall haben Sie zwei Möglichkeiten:
1. Fahren Sie trotzdem mit einer einfaktorielle ANOVA fort.
Es stellt sich heraus, dass eine einfaktorielle ANOVA tatsächlich gegenüber ungleichen Varianzen robust ist, solange die größte Varianz nicht größer als das Vierfache der kleinsten Varianz ist.
In Schritt 2 aus dem obigen Beispiel fanden wir, dass die kleinste Varianz 0,819 und die größte Varianz 2,46 betrug. Somit ist das Verhältnis der größten zur kleinsten Varianz 2,46 / 0,819 = 3,003.
Da dieser Wert kleiner als 4 ist, können wir einfach mit der einfaktorielle ANOVA fortfahren.
2. Führen Sie einen Kruskal-Wallis-Test durch
Wenn das Verhältnis der größten Varianz zur kleinsten Varianz größer als 4 ist, können wir stattdessen einen Kruskal-Wallis-Test durchführen. Dies wird als nicht parametrisches Äquivalent zur einfaktorielle ANOVA angesehen.
Ein schrittweises Beispiel für einen Kruskal-Wallis-Test in R finden Sie hier.
Eine einfaktorielle ANOVA wird verwendet, um zu bestimmen, ob es einen statistisch signifikanten Unterschied zwischen den Mittelwerten von drei oder mehr unabhängigen Gruppen gibt oder nicht.
Das folgende Beispiel bietet …
Eine geschachtelte ANOVA ist eine Art ANOVA („Varianzanalyse“), bei der mindestens ein Faktor in einem anderen Faktor verschachtelt ist.
Nehmen wir zum Beispiel an, ein Forscher möchte wissen, ob drei …