Geeignete Normalitätstests für kleine Stichproben


22

Bisher habe ich die Shapiro-Wilk-Statistik verwendet, um Normalitätsannahmen in kleinen Stichproben zu testen.

Könnten Sie bitte eine andere Technik empfehlen?


1
Hier sind ein paar andere Fragen von möglichem Interesse: Ist das Testen der Normalität im Wesentlichen nutzlos , um den Wert des Testens der Normalität zu erörtern ? nicht für eine Diskussion / Klärung des Sinns, in dem Normalität eine Annahme eines linearen Modells ist.
gung - Wiedereinsetzung von Monica

3
Der Wilk in Shapiro-Wilk bezieht sich auf Martin B. Wilk. Es ist allzu einfach, "Wilks" zu schreiben, vor allem, (a) wenn jemand anderes das gesagt oder geschrieben hat und Sie kopieren, (b) wenn Sie über die Arbeit in der Statistik von Samuel S. Wilks Bescheid wissen, einer ganz anderen Person, (c) die Sie bekommen Verwirrt über Terminal "s" in Englisch, da es auch für Pluralformen (Statistiken, Katzen, Hunde, ...) und Possessives ('s) verwendet wird, was selbst bei Personen üblich ist, deren Muttersprache Englisch ist. Ich habe diesen Thread soweit ich kann bearbeitet. Ich kann nicht auf Kommentare eingehen.
Nick Cox

Antworten:


24

Das fBasics- Paket in R (Teil von Rmetrics ) enthält mehrere Normalitätstests , die viele der beliebten Frequentistentests abdecken - Kolmogorov-Smirnov, Shapiro-Wilk, Jarque-Bera und D'Agostino - sowie einen Wrapper für die Normalitätstests im nördlichsten Paket - Anderson-Liebling, Cramer-von-Mises, Lilliefors (Kolmogorov-Smirnov), Pearson-Chi-Quadrat und Shapiro-Francia. Die Paketdokumentation enthält auch alle wichtigen Hinweise. Hier ist eine Demo, die zeigt, wie die Tests von Nortest verwendet werden .

Ein Ansatz, wenn Sie die Zeit haben, besteht darin, mehr als einen Test zu verwenden und auf Übereinstimmung zu prüfen. Die Tests variieren in vielerlei Hinsicht, so dass es nicht ganz einfach ist, "die Besten" zu wählen. Was verwenden andere Forscher in Ihrem Fachgebiet? Dies kann variieren und es ist möglicherweise am besten, die akzeptierten Methoden einzuhalten, damit andere Ihre Arbeit akzeptieren. Ich benutze häufig den Jarque-Bera-Test, teilweise aus diesem Grund, und Anderson-Darling zum Vergleich.

Einen Vergleich und eine Diskussion der Probleme finden Sie unter "Vergleich von Tests für univariate Normalität" (Seier 2002) und "Vergleich verschiedener Normalitätstests" (Yazici; Yolacan 2007).

Es ist auch trivial, diese Methoden zum Vergleich in R zu testen, dank aller Verteilungsfunktionen . Hier ist ein einfaches Beispiel mit simulierten Daten (ich werde die Ergebnisse nicht ausdrucken, um Platz zu sparen), obwohl eine umfassendere Darstellung erforderlich wäre:

library(fBasics); library(ggplot2)
set.seed(1)

# normal distribution
x1 <- rnorm(1e+06)   
x1.samp <- sample(x1, 200)
qplot(x1.samp, geom="histogram")
jbTest(x1.samp)
adTest(x1.samp)

# cauchy distribution
x2 <- rcauchy(1e+06)
x2.samp <- sample(x2, 200)
qplot(x2.samp, geom="histogram")
jbTest(x2.samp)
adTest(x2.samp)

Sobald Sie die Ergebnisse der verschiedenen Tests über verschiedene Verteilungen haben, können Sie vergleichen, welche am effektivsten waren. Zum Beispiel ergab der p-Wert für den Jarque-Bera-Test über 0,276 für die Normalverteilung (Akzeptieren) und <2,2e-16 für den Cauchy (Ablehnen der Nullhypothese).


Danke Shane, tolle Antwort! Nun, "die anderen" aus meinem Fachgebiet verwenden oft SPSS, also verwenden sie Kolmogorov-Smirnov (wenn sie überhaupt die Normalität überprüfen), obwohl der Lilliefors-Test meiner Meinung nach eine bessere Wahl ist, wenn die Daten aus einer Stichprobe erfasst werden (wenn Parameter vorliegen) unbekannte). Mir wurde beigebracht, dass Shapiro-Wilk für kleine Stichproben geeignet ist und ich wollte nur mehr Informationen über "Normalitätstests für kleine Stichproben" erhalten ... Übrigens verwende ich nortest in R! =)
aL3xa

12

Normalerweise hat Shapiro-Wilk in relativ kleinen Samples eine gute Leistung.

Der Hauptkonkurrent in Studien, den ich gesehen habe, ist der allgemeinere Anderson-Darling, der ziemlich gut abschneidet, aber ich würde nicht sagen, dass es besser war. Wenn Sie klären können, welche Alternativen Sie interessieren, ist möglicherweise eine bessere Statistik offensichtlicher. [edit: wenn du parameter abschätzt, sollte der AD test dafür angepasst werden.]

[Ich rate dringend davon ab, Jarque-Bera in kleinen Stichproben zu berücksichtigen (die in statistischen Kreisen wahrscheinlich besser als Bowman-Shenton bekannt sind - sie untersuchten die Verteilung kleiner Stichproben). Die asymptotische Gelenkverteilung von Schiefe und Kurtosis ist nicht vergleichbar mit der Verteilung in kleinen Stichproben. Ebenso sieht eine Banane nicht wie eine Orange aus. Es hat auch eine sehr geringe Leistung gegenüber einigen interessanten Alternativen - zum Beispiel hat es eine geringe Leistung, um eine symmetrische bimodale Verteilung aufzunehmen, die eine Kurtosis aufweist, die der einer normalen Verteilung nahekommt.]

Häufig testen Menschen die Passgenauigkeit aus nicht besonders guten Gründen, oder sie beantworten eine andere Frage als die, die sie tatsächlich beantworten möchten.

Zum Beispiel wissen Sie mit ziemlicher Sicherheit bereits, dass Ihre Daten nicht ganz normal sind (nicht genau). Es macht also keinen Sinn, eine Frage zu beantworten, auf die Sie die Antwort kennen - und der Hypothesentest beantwortet sie auch nicht .

Wenn Sie wissen, dass Sie noch keine exakte Normalität haben, gibt Ihnen Ihr Hypothesentest der Normalität tatsächlich eine Antwort auf eine Frage, die näher bei "Ist meine Stichprobengröße groß genug, um den Betrag an Nicht-Normalität aufzunehmen, den ich habe" liegt Die eigentliche Frage, die Sie beantworten möchten, ist in der Regel eher "Was bewirkt diese Nicht-Normalität bei diesen anderen Dingen, die mich interessieren?". Der Hypothesentest misst die Stichprobengröße, während die Frage, die Sie beantworten möchten, nicht sehr stark von der Stichprobengröße abhängt.

Es gibt Zeiten, in denen das Testen der Normalität sinnvoll ist, aber diese Situationen treten bei kleinen Stichproben so gut wie nie auf.

Warum testest du Normalität?


Vielen Dank für eine tolle Antwort und eine tolle Frage danach. Es ist entscheidend, einen Einblick in den Hintergrund des Problems zu bekommen. Nun, ich habe so oft Leute gesehen, die T-Tests, Pearson's R oder ANOVA durchgeführt haben, ohne eine Vorstellung von der Form der Verteilung zu haben (die oft stark verzerrt ist) - parametrische Techniken "benötigen" eine erfüllte Normalitätsannahme. In der Psychologie (die mein Interessengebiet ist) beschäftigen wir uns oft mit kleinen Stichproben, daher brauche ich einen geeigneten Normalitätstest.
aL3xa

5
Aber die Normalität ist niemals zufrieden. Es ist manchmal eine vernünftige Beschreibung der Daten, aber sie sind nicht normal. Obwohl es sinnvoll ist, auf Nicht-Normalität zu prüfen, wenn Sie davon ausgehen, ist es nicht besonders nützlich, sie zu testen (aus den oben beschriebenen Gründen). Ich mache zum Beispiel einen QQ-Plot, aber ein Hypothesentest beantwortet die falsche Frage in dieser Situation. t-tests und anova funktionieren normalerweise recht gut, wenn die Distributionen nicht stark schief sind. Ein besserer Ansatz könnte darin bestehen, Verfahren zu verwenden, die keine Normalität annehmen - vielleicht Resampling-Techniken.
Glen_b

Sie können auch nicht parametrische Tests verwenden, um weniger Strom zu verbrauchen. Und nichts ist in der Statistik absolut zufrieden, es ist nicht nur ein Normalitätsproblem. Bootstrapping oder Jackknifing sind jedoch keine Lösung, wenn Sie jemanden mit t-Test- und / oder ANOVA-Annahmen vertraut machen. Ich bezweifle, dass Resampling-Techniken Normalitätsprobleme überhaupt lösen. Man sollte die Normalität sowohl grafisch (Dichtediagramm, Boxplot, QQplot, Histogramm) als auch "numerisch" (Normalitätstests, Schiefe, Kurtosis usw.) überprüfen. Was schlagen Sie vor? Dies ist völlig unangebracht, aber wie würden Sie beispielsweise die ANOVA-Normalitätsannahmen überprüfen?
aL3xa

@ aL3xa Ich denke, der Randomisierungsansatz ist für Ihr Forschungsgebiet besser geeignet. Ungeachtet der Tatsache, dass übliche parametrische Tests eine gute Annäherung an exakte Permutationstests bieten, implizieren nicht parametrische Tests auch eine Art von Annahme (z. B. über die Form der Verteilung). Ich frage mich sogar, wie wir in einer Studie mit kleinen Stichproben wirklich definieren könnten, was eine Abweichung von der Normalität ist. Ich denke, Sie sollten in einer separaten Frage um weitere Diskussion über diesen Punkt bitten.
Chl

10

Es gibt eine ganze Wikipedia-Kategorie für Normalitätstests, einschließlich:

Ich denke, AD ist wahrscheinlich der beste von ihnen.


1
Genau. Ich führte einen Schnelltest des AD-Tests Jarque-Bera und des Spiegelhalter-Tests (1983) unter der Null mit Stichprobengröße 8 durch, der 10.000 Mal wiederholt wurde. Der AD-Test behält die nominelle Ablehnungsrate bei und liefert gleichmäßige Werte, während der JB-Test schrecklich ist und Spiegelhalter nur mittelmäßig.
Shabbychef

1
@shabbychef Der Jarque-Bera-Test basiert auf der asymptotischen Normalität von Probenversatz und Kurtosis, die selbst für n bei niedrigen 100ern nicht gut funktioniert . Um die gewünschte Ablehnungsrate zu erhalten, können Sie kritische Werte anpassen, z. B. basierend auf Simulationsergebnissen, wie in Abschnitt 4.1 von Thadewald, T, und H. Buning, 2004, Jarque-Bera-Test und seine Konkurrenten zum Testen der Normalität - Ein Leistungsvergleich , Diskussion Paper Economics 2004/9, Wirtschaftswissenschaftliche Fakultät, Freie Universität Berlin.
Silverfish

3

Der Vollständigkeit halber mögen Ökonomen auch den Kiefer- und Lachs-Test aus ihrer 1983 erschienenen Veröffentlichung in Economics Letters - er summiert "normalisierte" Ausdrücke von Schiefe und Kurtosis, die dann Chi-Quadrat-verteilt werden. Ich habe eine alte C ++ - Version, die ich während meiner Schulzeit geschrieben habe und die ich in R übersetzen konnte.

Edit: Und hier ist ein neuer Artikel von Bierens, der Jarque-Bera und Kiefer-Salmon (wieder) herleitet.

Edit 2: Ich habe den alten Code durchgesehen und es scheint, dass es wirklich der gleiche Test zwischen Jarque-Bera und Kiefer-Salmon ist.


2

Tatsächlich unterscheiden sich der Kiefer-Lachs-Test und der Jarque-Bera-Test kritisch, wie an mehreren Stellen gezeigt, aber zuletzt hier - Momententests für standardisierte Fehlerverteilungen: Ein einfacher robuster Ansatz von Yi-Ting Chen. Der konstruktive Kiefer-Lachs-Test ist im Gegensatz zum standardmäßigen Jarque-Bera-Test gegenüber Fehlerstrukturen vom Typ ARCH robust. Der Artikel von Yi-Ting Chen entwickelt und diskutiert, was meiner Meinung nach derzeit die besten Tests sind.


4
Chen scheint sich auf größere Datensätze zu konzentrieren, was sinnvoll ist, da der vierte und sechste und höhere Moment dieser Tests einige Zeit in Anspruch nehmen wird, um sich auf asymptotische Niveaus zu konzentrieren. Verteilungstests werden jedoch normalerweise für Datensätze verwendet, die kleiner als 250 sind (das in dieser Veröffentlichung untersuchte Minimum). Tatsächlich werden die meisten von ihnen mit größeren Datenmengen so leistungsfähig, dass sie in solchen Anwendungen kaum mehr als Nachdenken sind. Oder ist hier mehr los als ich sehe?
whuber

0

Bei Stichprobengrößen <30 Probanden gilt Shapiro-Wilk als robust - Seien Sie vorsichtig , wenn Sie das Signifikanzniveau des Tests anpassen, da dies zu einem Typ-II-Fehler führen kann! [1]


In kleinen Stichproben können Anpassungsgütetests die Normaility im Allgemeinen nicht ablehnen.
Michael R. Chernick

@MichaelChernick was passiert dann im konkreten Fall? Was ist der Grund dafür, dass ein kleines Wesen als nicht normal eingestuft wird?
Aliakbar Ahmadi
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.