Signifikanzwiderspruch in der linearen Regression: signifikanter t-Test für einen Koeffizienten gegenüber nicht signifikanter Gesamt-F-Statistik

35

Ich passe ein Modell mit mehreren linearen Regressionen zwischen 4 kategorialen Variablen (mit jeweils 4 Ebenen) und einer numerischen Ausgabe an. Mein Datensatz enthält 43 Beobachtungen.

Die Regression gibt mir die folgenden Werte aus dem Test für jeden Steigungskoeffizienten: . Somit ist der Koeffizient für den vierten Prädiktor bei einem Konfidenzniveau von signifikant .pt.15,.67,.27,.02α=.05

Andererseits gibt mir die Regression einen Wert aus einem Gesamt- Test der Nullhypothese, dass alle meine Steigungskoeffizienten gleich Null sind. Für meinen Datensatz ist dieser Wert .pFp.11

Meine Frage: Wie soll ich diese Ergebnisse interpretieren? Welchen Wert soll ich verwenden und warum? Unterscheidet sich der Koeffizient für die 4. Variable beim Konfidenzniveau von signifikant von ?p0α=.05

Ich habe eine verwandte Frage gesehen, und Statistiken in einer Regression , aber es gab eine gegenteilige Situation: hohe Test- Werte und niedrige Test- Werte. Ehrlich gesagt verstehe ich nicht ganz, warum wir zusätzlich zu einem Test einen Test benötigen, um festzustellen, ob sich die linearen Regressionskoeffizienten signifikant von Null unterscheiden.FttpFpFt

Löwe
quelle
2
Wenn Sie 4 kategoriale Variablen mit jeweils 4 Ebenen haben, sollten Sie 3 * 4 = 12 Koeffizienten für Ihre unabhängigen Variablen haben (zuzüglich des Abschnitts) ...
boscovich
@andrea: Ich habe beschlossen, sie als numerische Variablen zu behandeln.
Leo
4
0,02 ist kaum signifikant (besonders wenn Sie die Tatsache berücksichtigen, dass Sie insgesamt fünf Tests haben) und 0,11 ist nicht sehr hoch. Eine großzügige Interpretation wäre, dass mit etwas mehr Leistung auch der gesamte F-Test signifikant wäre (und vielleicht auch der erste Koeffizient). Eine konservativere Interpretation ist, dass Sie keinem dieser Ergebnisse mehr vertrauen sollten (einschließlich des Koeffizienten mit einem Wert von 0,02 p). In beiden Fällen sollten Sie nicht zu viel im Unterschied zwischen .02 und .11 lesen.
Gala
3
Für eine Diskussion des umgekehrten Falls können Sie auch hier sehen: Wie kann eine Regression signifikant sein, obwohl alle Prädiktoren nicht signifikant sind , zusätzlich zu der oben verknüpften Frage.
gung - Wiedereinsetzung von Monica

Antworten:

37

Ich bin mir nicht sicher, ob Multikollinearität das ist, was hier vor sich geht. Es könnte sicher sein, aber aus den gegebenen Informationen kann ich nicht schließen, und ich möchte nicht dort anfangen. Meine erste Vermutung ist, dass dies ein Problem mit mehreren Vergleichen sein könnte. Das heißt, wenn Sie genügend Tests durchführen, wird etwas angezeigt, auch wenn dort nichts vorhanden ist.

Eines der Themen, auf die ich eingehen möchte, ist, dass das Problem der Mehrfachvergleiche immer im Hinblick auf die Untersuchung vieler paarweiser Vergleiche erörtert wird, z. B. das Ausführen von t-Tests für jede einzelne Ebenenpaarung. (Eine humorvolle Darstellung mehrerer Vergleiche finden Sie hier .) Dadurch entsteht der Eindruck, dass dies der einzige Ort ist, an dem dieses Problem auftritt. Aber das ist einfach nicht wahr - das Problem der mehrfachen Vergleiche taucht überall auf. Wenn Sie beispielsweise eine Regression mit 4 erklärenden Variablen ausführen, treten dieselben Probleme auf. In einem gut durchdachten Experiment können IVs orthogonal sein, aber die Leute sorgen sich routinemäßig darum, Bonferroni-Korrekturen an Sätzen von orthogonalen A-priori-Kontrasten anzuwenden, und denken nicht zweimal über faktorielle ANOVAs nach. Meiner Meinung nach ist dies inkonsistent.

Der globale F-Test wird als "gleichzeitiger" Test bezeichnet. Dadurch wird überprüft, ob alle Ihre Prädiktoren nicht mit der Antwortvariablen zusammenhängen. Der gleichzeitige Test bietet einen gewissen Schutz vor dem Problem der mehrfachen Vergleiche, ohne den Stromausfall von Bonferroni in Kauf nehmen zu müssen. Leider ist meine Interpretation von dem, was Sie melden, dass Sie einen Nullbefund haben.

Gegen diese Interpretation sprechen mehrere Dinge. Erstens haben Sie mit nur 43 Daten mit ziemlicher Sicherheit nicht viel Strom. Es ist durchaus möglich, dass es einen echten Effekt gibt, aber Sie können ihn nur nicht ohne weitere Daten auflösen. Zweitens mache ich mir, wie sowohl @andrea als auch @Dimitriy, Sorgen darüber, ob es angemessen ist, kategoriale Variablen mit vier Ebenen als numerisch zu behandeln. Dies ist möglicherweise nicht angemessen und kann eine Reihe von Auswirkungen haben, einschließlich der Einschränkung Ihrer Fähigkeit, das zu erkennen, was wirklich vorhanden ist. Schließlich bin ich mir nicht sicher, ob Signifikanztests so wichtig sind, wie die Leute glauben. A von ist Art von niedrig; ist da wirklich etwas los? vielleicht! Wer weiß? - um .05 gibt es keine „helle Linie“, die echte Effekte vom bloßen Aussehen abgrenzt. p.11

gung - Wiedereinsetzung von Monica
quelle
24

Ich möchte vorschlagen, dass dieses Phänomen (eines nicht signifikanten Gesamttests trotz einer signifikanten Einzelvariablen) als eine Art aggregierter "Maskierungseffekt" aufgefasst werden kann und dass es sich möglicherweise aus multikollinearen erklärenden Variablen ergibt, dies aber nicht muss das überhaupt. Es stellt sich auch heraus, dass dies nicht auf mehrfache Vergleichseinstellungen zurückzuführen ist. Diese Antwort fügt somit den bereits erschienenen Antworten einige Qualifikationen hinzu, was im Gegenteil nahe legt, dass entweder Multikollinearität oder Mehrfachvergleiche als die Schuldigen angesehen werden sollten.

Um die Plausibilität dieser Behauptungen zu ermitteln, generieren wir eine Sammlung von perfekt orthogonalen Variablen - so nicht kollinear wie möglich - und einer abhängigen Variablen, die explizit nur durch die erste der Erklärungen bestimmt wird (zuzüglich einer guten Menge an Zufallsfehlern) unabhängig von allem anderen). In Rdieser kann (reproduzierbar, wenn Sie experimentieren mögen) durchgeführt werden , wie

set.seed(17)
p <- 5 # Number of explanatory variables
x <- as.matrix(do.call(expand.grid, lapply(as.list(1:p), function(i) c(-1,1))))
y <- x[,1] + rnorm(2^p, mean=0, sd=2)

Es ist unwichtig, dass die erklärenden Variablen binär sind. Was zählt, ist ihre Orthogonalität, die wir überprüfen können, um sicherzustellen, dass der Code wie erwartet funktioniert. Dies kann durch Untersuchen der Korrelationen geschehen. Tatsächlich ist die Korrelationsmatrix interessant : Die kleinen Koeffizienten weisen darauf hin y, dass sie mit keiner der Variablen zu tun haben, mit Ausnahme der ersten (beabsichtigten) und der nicht diagonalen Nullen, die die Orthogonalität der erklärenden Variablen bestätigen:

> cor(cbind(x,y))
     Var1  Var2  Var3   Var4  Var5      y
Var1 1.00 0.000 0.000  0.000  0.00  0.486
Var2 0.00 1.000 0.000  0.000  0.00  0.088
Var3 0.00 0.000 1.000  0.000  0.00  0.044
Var4 0.00 0.000 0.000  1.000  0.00 -0.014
Var5 0.00 0.000 0.000  0.000  1.00 -0.167
y    0.49 0.088 0.044 -0.014 -0.17  1.000

Lassen Sie uns eine Reihe von Regressionen ausführen , wobei wir nur die erste Variable, dann die ersten beiden und so weiter verwenden. Zur Kürze und zum einfachen Vergleich zeige ich in jedem nur die Zeile für die erste Variable und den gesamten F-Test:

>temp <- sapply(1:p, function(i) print(summary(lm(y ~ x[, 1:i]))))

#              Estimate Std. Error t value Pr(>|t|)   
1  x[, 1:i]       0.898      0.294    3.05   0.0048 **
F-statistic: 9.29 on 1 and 30 DF,  p-value: 0.00478 

2  x[, 1:i]Var1    0.898      0.298    3.01   0.0053 **
F-statistic: 4.68 on 2 and 29 DF,  p-value: 0.0173 

3  x[, 1:i]Var1   0.8975     0.3029    2.96   0.0062 **
F-statistic: 3.05 on 3 and 28 DF,  p-value: 0.0451 

4  x[, 1:i]Var1   0.8975     0.3084    2.91   0.0072 **
F-statistic: 2.21 on 4 and 27 DF,  p-value: 0.095 

5  x[, 1:i]Var1   0.8975     0.3084    2.91   0.0073 **
F-statistic: 1.96 on 5 and 26 DF,  p-value: 0.118

Sehen Sie sich an, wie (a) sich die Signifikanz der ersten Variablen kaum ändert, (a ') die erste Variable signifikant bleibt (p <0,05), auch wenn Sie mehrere Vergleiche durchführen ( z. B. wenden Sie Bonferroni an, indem Sie den nominellen p-Wert mit dem multiplizieren Anzahl der erklärenden Variablen), (b) der Koeffizient der ersten Variablen ändert sich kaum, aber (c) die Gesamtsignifikanz wächst exponentiell und steigt schnell auf ein nicht signifikantes Niveau an.

Ich interpretiere dies als Beweis dafür, dass das Einbeziehen von erklärenden Variablen, die weitgehend unabhängig von der abhängigen Variablen sind, den gesamten p-Wert der Regression "maskieren" kann. Wenn die neuen Variablen zu den vorhandenen und zu der abhängigen Variablen orthogonal sind, ändern sie die einzelnen p-Werte nicht. (Die kleinen Änderungen, die hier zu sehen sind, sind darauf zurückzuführen, dass der zufällige Fehler, der hinzugefügt ywird, zufällig leicht mit allen anderen Variablen korreliert.) Eine Lehre daraus ist, dass Sparsamkeit wertvoll ist : Die Verwendung so weniger Variablen wie nötig kann die Bedeutung von stärken die Ergebnisse.

Ich sage nicht , dass dies notwendigerweise für den Datensatz in der Frage geschieht, über den wenig bekannt wurde. Das Wissen darüber, dass dieser Maskierungseffekt auftreten kann , sollte jedoch unsere Interpretation der Ergebnisse sowie unsere Strategien zur Variablenauswahl und Modellbildung beeinflussen.

whuber
quelle
+1, ich stimme mit dieser Analyse überein. FWIW, das ist die Erklärung, auf die ich in meiner Diskussion über Macht in meiner Antwort auf die andere Frage hingewiesen habe (vielleicht nicht gut) . Ich habe hier eine Frage zu Ihrer Version. Warum verwenden Sie 32 als Mittelwert für Ihre Fehlerbedingung? Ist das ein Tippfehler oder ist es irgendwie wichtig?
gung - Reinstate Monica
@gung Wo siehst du 32? Wenn Sie sich auf beziehen rnorm(2^p, sd=2), beachten Sie bitte, dass das erste Argument die Anzahl der Begriffe ist, nicht der Mittelwert. Der Mittelwert ist standardmäßig Null und wurde daher nicht explizit angegeben.
Whuber
rnorm()N(μ,σ)
@gung Ich bin dankbar für die Möglichkeit, den Code zu klären und habe daher die beanstandete Zeile bearbeitet.
Whuber
11

Dies ist häufig der Fall, wenn Ihre erklärenden Variablen einen hohen Grad an Kollinearität aufweisen. Die ANOVA F ist ein gemeinsamer Test, bei dem alle Regressoren gemeinsam nicht informativ sind . Wenn Ihre X ähnliche Informationen enthalten, kann das Modell die Erklärungskraft nicht dem einen oder anderen Regressor zuordnen, aber ihre Kombination kann einen Großteil der Variation in der Antwortvariablen erklären.

x1y

Dimitriy V. Masterov
quelle
Wenn Kollinearität ein Problem ist, werden Sie hohe Standardfehler und möglicherweise unplausibel große Koeffizienten haben, möglicherweise sogar mit den falschen Vorzeichen. Um sicherzustellen, dass dies der Fall ist, berechnen Sie die Varianzinflationsfaktoren (VIFs) nach Ihrer Regression. Eine vernünftige Faustregel ist, dass Kollinearität ein Problem ist, wenn das größte VIF größer als 10 ist. Wenn ja, haben Sie hier wirklich zwei Möglichkeiten. Eine besteht darin, das Modell neu zu spezifizieren, um die nahezu lineare Abhängigkeit zu verringern, indem einige Ihrer Variablen gelöscht werden. Die zweite besteht darin, eine größere und / oder bessere (weniger homogene) Probe zu erhalten.
Dimitriy V. Masterov
1
(+1) Diese Erklärung ist gut, aber es ist unnötig, das Phänomen der Multikollinearität zuzuschreiben: Der Hauptunterschied besteht zwischen gemeinsam informativ und individuell informativ. Das Einbeziehen zusätzlicher unkorrelierter Regressoren (die jegliche Multikollinearität vermeiden) senkt die erstere, während die letztere unverändert bleibt.
Whuber