Ich würde nicht sagen, dass die klassischen T-Tests mit einer Stichprobe (einschließlich gepaarter) und zwei Stichproben mit gleicher Varianz genau veraltet sind, aber es gibt eine Vielzahl von Alternativen, die hervorragende Eigenschaften haben und in vielen Fällen verwendet werden sollten.
Ich würde auch nicht sagen, dass die Fähigkeit zur schnellen Durchführung von Wilcoxon-Mann-Whitney-Tests an großen Proben - oder sogar Permutationstests - neu ist. Ich habe beides vor über 30 Jahren routinemäßig als Student gemacht, und die Fähigkeit dazu hatte ich auch war zu diesem Zeitpunkt für eine lange Zeit verfügbar.
†
Hier sind einige Alternativen und warum sie helfen können:
Welch-Satterthwaite - Wenn Sie nicht sicher sind, dass die Varianzen nahezu gleich sind (bei gleichen Stichprobengrößen ist die Annahme der gleichen Varianzen nicht kritisch)
Wilcoxon-Mann-Whitney - Hervorragend, wenn die Schwänze normal oder schwerer als normal sind, insbesondere in Fällen, die nahezu symmetrisch sind. Wenn die Schwänze eher normal sind, bietet ein Permutationstest der Mittel etwas mehr Leistung.
Robuste T-Tests - es gibt eine Vielzahl von Tests , die im Normalfall eine gute Leistung aufweisen, aber auch bei Alternativen mit schwerem Heck oder einer gewissen Schräglage gut funktionieren (und eine gute Leistung beibehalten).
GLMs - nützlich zum Beispiel für Zählungen oder Fälle mit kontinuierlichem rechten Versatz (z. B. Gamma); Entwickelt, um Situationen zu bewältigen, in denen sich Varianz auf Mittelwert bezieht.
zufällige Effekte oder Zeitreihenmodelle können in Fällen nützlich sein, in denen es bestimmte Formen der Abhängigkeit gibt
Bayes'sche Ansätze , Bootstrapping und eine Fülle anderer wichtiger Techniken, die ähnliche Vorteile wie die obigen Ideen bieten können. Bei einem Bayes'schen Ansatz ist es beispielsweise durchaus möglich, ein Modell zu haben, das einen kontaminierenden Prozess erklärt, mit Zählungen oder verzerrten Daten umgeht und bestimmte Formen der Abhängigkeit gleichzeitig verarbeitet .
Obwohl es eine Vielzahl praktischer Alternativen gibt, kann der Standard-Zwei-Stichproben-T-Test mit gleicher Varianz bei großen, gleich großen Stichproben häufig gute Ergebnisse erzielen, sofern die Population nicht sehr weit vom Normalwert entfernt ist (z. B. wenn sie einen sehr hohen Schwanz aufweist) / skew) und wir haben fast Unabhängigkeit.
Die Alternativen sind in einer Vielzahl von Situationen nützlich, in denen wir uns mit dem einfachen T-Test möglicherweise nicht so sicher sind ... und dennoch im Allgemeinen eine gute Leistung erbringen, wenn die Annahmen des T-Tests erfüllt sind oder kurz davor stehen, erfüllt zu werden.
Der Welch ist eine sinnvolle Voreinstellung, wenn die Verteilung nicht zu stark vom Normalwert abweicht (wobei größere Samples mehr Spielraum bieten).
Während der Permutationstest ausgezeichnet ist und im Vergleich zum t-Test keine Leistungseinbußen aufweist, wenn seine Annahmen zutreffen (und der nützliche Vorteil, direkt auf die Menge des Interesses schließen zu können), ist der Wilcoxon-Mann-Whitney wohl die bessere Wahl, wenn Schwänze können schwer sein; Mit einer geringfügigen zusätzlichen Annahme kann das WMW Schlussfolgerungen ziehen, die sich auf die Mittelwertverschiebung beziehen. (Es gibt andere Gründe, warum man es dem Permutationstest vorziehen könnte.)
[Wenn Sie wissen, dass Sie es mit Sagenzählungen, Wartezeiten oder ähnlichen Arten von Daten zu tun haben, ist die GLM-Route oft sinnvoll. Wenn Sie etwas über mögliche Formen der Abhängigkeit wissen, ist dies ebenfalls leicht zu handhaben, und das Abhängigkeitspotenzial sollte in Betracht gezogen werden.]
Während der T-Test mit Sicherheit nicht der Vergangenheit angehört, können Sie ihn fast immer genauso gut oder fast genauso gut durchführen und potenziell viel gewinnen, wenn Sie keine der Alternativen in Anspruch nehmen . Das heißt, ich stimme im Großen und Ganzen der Einschätzung in diesem Beitrag in Bezug auf den T-Test zu ... Sie sollten wahrscheinlich die meiste Zeit über Ihre Annahmen nachdenken, bevor Sie die Daten überhaupt erfassen, und falls eine davon nicht wirklich zu erwarten ist zu halten, mit dem T-Test gibt es in der Regel fast nichts zu verlieren , wenn Sie diese Annahme einfach nicht machen, da die Alternativen normalerweise sehr gut funktionieren.
Wenn man sich die Mühe macht, Daten zu sammeln, gibt es sicherlich keinen Grund, nicht ein wenig Zeit zu investieren und ernsthaft darüber nachzudenken, wie man am besten auf seine Schlussfolgerungen eingehen kann.
Beachten Sie, dass ich im Allgemeinen vom expliziten Testen von Annahmen abrate: Es wird nicht nur die falsche Frage beantwortet, sondern es wird auch eine Analyse ausgewählt, die auf der Zurückweisung oder Nicht-Zurückweisung der Annahme basiert. Dies wirkt sich auf die Eigenschaften beider Testoptionen aus. Wenn Sie die Annahme nicht sicher genug treffen können (entweder weil Sie den Prozess so gut kennen, dass Sie ihn annehmen können, oder weil das Verfahren unter Ihren Umständen nicht empfindlich darauf reagiert), sollten Sie das Verfahren im Allgemeinen besser anwenden das nimmt es nicht an.
†
# set up some data
x <- c(53.4, 59.0, 40.4, 51.9, 43.8, 43.0, 57.6)
y <- c(49.1, 57.9, 74.8, 46.8, 48.8, 43.7)
xyv <- stack(list(x=x,y=y))$values
nx <- length(x)
# do sample-x mean for all combinations for permutation test
permmean = combn(xyv,nx,mean)
# do the equivalent resampling for a randomization test
randmean <- replicate(100000,mean(sample(xyv,nx)))
# find p-value for permutation test
left = mean(permmean<=mean(x))
# for the other tail, "at least as extreme" being as far above as the sample
# was below
right = mean(permmean>=(mean(xyv)*2-mean(x)))
pvalue_perm = left+right
"Permutation test p-value"; pvalue_perm
# this is easier:
# pvalue = mean(abs(permmean-mean(xyv))>=abs(mean(x)-mean(xyv)))
# but I'd keep left and right above for adapting to other tests
# find p-value for randomization test
left = mean(randmean<=mean(x))
right = mean(randmean>=(mean(xyv)*2-mean(x)))
pvalue_rand = left+right
"Randomization test p-value"; pvalue_rand
(Die resultierenden p-Werte sind 0,538 bzw. 0,539; der entsprechende gewöhnliche t-Test mit zwei Proben hat einen p-Wert von 0,504 und der Welch-Satterthwaite-t-Test hat einen p-Wert von 0,522.)
Beachten Sie, dass der Code für die Berechnungen jeweils 1 Zeile für die Kombinationen für den Permutationstest ist und der p-Wert auch in 1 Zeile erfolgen könnte.
Eine Anpassung an eine Funktion, die einen Permutationstest oder einen Randomisierungstest durchführt und eine Ausgabe ähnlich einem T-Test erzeugt, wäre eine triviale Angelegenheit.
Hier ist eine Anzeige der Ergebnisse:
# Draw a display to show distn & p-vale region for both
opar <- par()
par(mfrow=c(2,1))
hist(permmean, n=100, xlim=c(45,58))
abline(v=mean(x), col=3)
abline(v=mean(xyv)*2-mean(x), col=3, lty=2)
abline(v=mean(xyv), col=4)
hist(randmean, n=100, xlim=c(45,58))
abline(v=mean(x), col=3)
abline(v=mean(xyv)*2-mean(x), col=3, lty=2)
abline(v=mean(xyv), col=4)
par(opar)