Warum ändert sich das Modell bei Verwendung von relevel?

8

Bei der Berechnung von Regressionsmodellen mit R verwende ich regelmäßig die Relevel-Funktion, damit mein Modell auch für die andere Ebene Ergebnisse liefert. Mir ist aufgefallen, dass dies manchmal, aber nicht oft, das Modell dahingehend veränderte, dass die Werte anderer Faktoren, die vor der Relevanz signifikant waren, nicht mehr vorhanden sind. Ist dies relevant oder außergewöhnlich und möglicherweise auf ein Problem mit meinen Daten zurückzuführen? Zeigt es, dass meine Daten wahrscheinlich nicht eine der Voraussetzungen für lineare Modelle erfüllen?

Ist es in diesem Zusammenhang in Ordnung, wenn ich relevel verwende, mein Modell neu berechne und dann Signifikanzwerte von beiden Modellen in meinem Artikel berichte? Wenn die Signifikanz zwischen den beiden Modellen für einen bestimmten Faktor unterschiedlich ist, sollte ich mich dann für eines entscheiden, das weniger optimistisch ist.

Ich nehme an, meine Frage verrät, dass ich nicht genug über lm weiß, um die Notwendigkeit eines Basislevels zu erfassen. Ich dachte, ich verstehe es ziemlich gut;) Irgendwie erklärte keine der Einführungen, die ich las, diesen Punkt, oder ich war zu dumm, um es zu verstehen. Wenn mich also jemand zu einer Site leiten könnte, an der der Punkt, an dem Basiswerte in lm vorliegen, erklärt wird, oder es selbst erklären könnte, wäre das auch großartig!

Bearbeiten: Hier ist ein minimales Beispiel:

library(datasets)
sprays<-OrchardSprays
model<-lm(decrease~treatment+rowpos+colpos,data=sprays)
summary(model)

Ein Teil der Zusammenfassung sagt

treatmentC    20.625      9.731   2.120  0.03866 *

Wenn also die Behandlung == C ist, hat dies einen signifikanten positiven Einfluss auf die Abnahme. Jetzt verlasse ich die 'Behandlung' auf B, um herauszufinden, welchen Einfluss die Behandlung hat == A:

sprays$treatment<-relevel(sprays$treatment,"B")
summary(model)

Und jetzt ist die Behandlung == C in diesem neuen Modell nicht signifikant:

treatmentC    17.625      9.731   1.811  0.07567 .

Entschuldigung für die Veröffentlichung am falschen Ort! Kann ich meine Frage in stats statexchange verschieben oder sollte ich dort eine neue öffnen?

Robert
quelle
2
Willkommen bei SO. Denken Sie, Sie können ein kleines reproduzierbares Beispiel erstellen, das dies veranschaulicht?
Andrie
4
Es hört sich so an, als ob Sie nicht wissen, was das Modell passt und wie Sie die Parameter in Ihrem Modell interpretieren. Dies ist wahrscheinlich besser für die Statsexchange-Site für Statistiken geeignet.
Dason
2
Beide vorherigen Kommentare sind genau richtig. Etwas so Einfaches wie d <- data.frame(y=runif(300),f=factor(rep(LETTERS[1:3],each=100)); lm(y~f,data=d)gibt Ihnen einen Anfang, obwohl es in diesem Fall natürlich keine signifikanten Änderungen geben wird (obwohl sich die Parameterschätzungen und p-Werte sicherlich ändern werden, wenn Sie neu einordnen).
Ben Bolker
Vielleicht möchten Sie die Seiten 74-75 dieses Buches springer.com/economics/econometrics/book/978-0-387-77316-2 sehen . Dies ist eindeutig ein ökonometrisches Problem in Bezug auf Dummy-Variablen. Durch Ändern Ihrer Basislinie wird nicht der erwartete Wert Ihrer Schätzung geändert, sondern die Parameterschätzung. Jedes grundlegende ökonometrische Buch hilft Ihnen in dieser Angelegenheit.
2
... Dies ist wirklich kein "Ökonometrie" -Problem, sondern ein Modellparametrisierungsproblem, das in jedem Bereich der Statistik ein Problem darstellt.
Dason

Antworten:

7

Angenommen, der Faktor conditionshat Ebenen A,B,Cund Sie regressieren Ihre Antwortvariable yunter Bedingungen mit mod <- lm(y ~ conditions). Nun summary(mod)gibt den Mittelwert der Referenzpegel von conditions(sagen wir A) und der Differenz zwischen den Bedingungen in den Mitteln Bund Aund die Differenz zwischen den Bedingungen Cund A(berichtet jeweils als (Intercept), conditions:Bund conditions:C). Wenn Sie conditions <- relevel(conditions, ref = 'B')das lineare Modell erneut ausführen, erhalten Sie jetzt den Mittelwert B, den Unterschied zwischen Aund Bund den Unterschied zwischen CundA. Natürlich können sich die p-Werte ändern. Dies bedeutet nicht, dass ein Problem mit Ihren Daten vorliegt. Dies bedeutet nicht, dass Ihre Daten nicht unbedingt eine Annahme des linearen Modells verfehlen. Die Passform ist dieselbe und Sie haben einfach geändert, welche Informationen ausgedruckt werden, weil Sie den Referenzwert geändert haben und Behandlungskontraste verwenden. Sie können dieselben linearen Hypothesentests mit dem Original erhalten mod.

In vielen Bereichen ist es üblich zu melden, ob ein statistisch signifikanter Effekt von conditions(unter Verwendung der Ausgabe von anova(mod)) aufgetreten ist, und an die vollständige Regressionsausgabe in einer Tabelle zu berichten (unter Verwendung der gewünschten Referenzstufen) ). Die Normen, wie und ob Tests von Avs. B(zum Beispiel) gemeldet werden sollen, variieren je nach Feld. Schauen Sie sich gute Papiere auf Ihrem Gebiet genau an.

abgesperrt
quelle
Danke, das beantwortet so ziemlich meine Frage! Nur zur Verdeutlichung: Sie sagen, es ist üblich zu berichten, ob die Faktoren signifikant waren (Ausgabe von Anova) und die vollständige Regressionsausgabe, aber die Normen für Tests können variieren. Aber die vollständige Regressionsausgabe (mit Zusammenfassung) enthält hauptsächlich diese Tests (zusätzlich zum Achsenabschnitt), nicht wahr?
Ja, aber das bedeutet nicht unbedingt, dass Sie sie melden sollten. Insbesondere Signifikanztests des Abschnitts sind meistens bedeutungslos ...
Ben Bolker
Ich bin verwirrt ... Wenn die Zusammenfassung sie meldet, müssen sie wohl für etwas nützlich sein? Der Hauptgrund, warum ich ein Modell berechne, ist, dass ich mit einem gewissen Maß an Sicherheit herausfinden möchte, welche Ebene welchen Einfluss hat. Wenn sie also dazu neigen, "bedeutungslos" zu sein, gibt es für mich wenig Grund, dies zu tun. Oder würden Sie eine andere Methode empfehlen, um dies zu tun?