Schrittweise Regression in R - Kritischer p-Wert

12

Welchen kritischen p-Wert verwendet die step()Funktion in R für die schrittweise Regression? Ich nehme an, es ist 0,15, aber ist meine Annahme richtig? Wie kann ich den kritischen p-Wert ändern?

Jason Samuels
quelle
7
Die 'Schritt'-Funktion von R basiert auf AIC.
Michael M
7
Es ist am besten, überhaupt keine schrittweisen Modellauswahlroutinen zu verwenden. Um zu verstehen, warum, kann es hilfreich sein, meine Antwort hier zu lesen: Algorithmen zur automatischen Modellauswahl .
gung - Wiedereinsetzung von Monica
3
Weiter zu @ MichaelMayers Kommentar: Der DescriptionTeil der Hilfeseite ?stepsagt in seiner Gesamtheit: Wählen Sie ein formelbasiertes Modell von AIC aus.
Stephan Kolassa

Antworten:

27

Wie ich in meinem Kommentar zu Ihrer anderen Frage erklärt habe, stepwerden AIC-Werte anstelle von p-Werten verwendet.

Für eine einzelne Variable zu einem Zeitpunkt entspricht AIC jedoch der Verwendung eines p-Werts von 0,15 (oder genauer gesagt 0,1573):

Vergleichen Sie zwei Modelle, die sich durch eine einzige Variable unterscheiden. Nennen Sie die Modelle (kleineres Modell) und M 1 (größeres Modell) und lassen Sie ihre AICs AIC 0 und AIC 1 seinM0M1AIC0AIC1 .

Unter Verwendung des AIC-Kriteriums würden Sie das größere Modell verwenden, wenn . Dies ist der Fall, wenn - 2 log L 0 - ( - 2 log L 1 ) > 2 istAIC1<AIC02logL0(2logL1)>2 .

Dies ist jedoch lediglich die Statistik in einem Likelihood-Ratio-Test. Aus Wilks 'Theorem lehnen wir die Null ab, wenn die Statistik das obere Quantil von a χ 2 1 überschreitet . Wenn wir also einen Hypothesentest verwenden, um zwischen dem kleineren und dem größeren Modell zu wählen, wählen wir das größere Modell, wenn - 2 log L 0 - ( - 2 log L 1 ) > C α .αχ122logL0(2logL1)>Cα

Jetzt liegt am 84.27 Perzentil eines χ 2 1 . Wenn wir also das größere Modell mit kleinerem AIC wählen, entspricht dies der Ablehnung der Nullhypothese für einen Test des zusätzlichen Terms mit einem p-Wert von 1 - 0,843 = 0,157 oder 15,7 %.2χ1210.843=0.15715.7%


Wie modifizierst du es?

Einfach. Ändern Sie den kParameter in stepvon 2 auf etwas anderes. Sie wollen stattdessen 10%? Machen Sie es 2.7:

qchisq(0.10,1,lower.tail=FALSE)
[1] 2.705543

Sie wollen 2,5%? Set k=5:

qchisq(0.025,1,lower.tail=FALSE)
[1] 5.023886

und so weiter.


Auch wenn dies Ihre Frage löst, rate ich Ihnen, Frank Harrells Antwort auf Ihre andere Frage genau zu beachten und Antworten von sehr vielen Statistikern auf andere Fragen im Zusammenhang mit schrittweiser Regression zu suchen, die in der Regel sehr hilfreich sind konsequent schrittweise Verfahren im Allgemeinen zu vermeiden.

Glen_b - Setzen Sie Monica wieder ein
quelle
Gute Erklärung. Wissen Sie, ob dies für die p-Werte gewöhnlicher Regressionstests in etwa zutrifft?
Ben Ogorek
α=0.05
(ctd) ... eine Reihe schwerwiegender Probleme mit stepwise. Andere beinhalten voreingenommene Schätzungen und Standardfehler, die viel zu klein sind.
Glen_b -Reinstate Monica
1
Momentan möchte ich Probleme mit der schrittweisen Modellauswahl beiseite legen und die kleinere AIC => .1573 p-Wert-Regel verallgemeinern. Der von Ihnen beschriebene p-Wert für Likelihood Ratio ist in Ordnung, aber in Routinen wie Rs lm wird Estimate / std.err mit einer t-Verteilung verglichen. Dies ist ein anderer Test, und ich habe mich gefragt, ob Ihr .1573-Ergebnis möglicherweise ungefähr zutrifft.
Ben Ogorek
2
tk
4

Wie oben erwähnt, stepbasiert die Funktion in R auf AIC-Kriterien. Aber ich denke mit p-Wert meinst du Alpha zum Eintreten und Alpha zum Verlassen. Was Sie tun können, ist stepwisedie von Paul Rubin geschriebene und hier verfügbare Funktion zu verwenden . Wie Sie sehen, haben Sie die Argumente alpha.to.enter und alpha.to.leave, die Sie ändern können. Beachten Sie, dass diese Funktion den F-Test oder einen äquivalenten T-Test verwendet, um die Modelle auszuwählen. Darüber hinaus kann es nicht nur schrittweise Regression, sondern auch Vorwärtsauswahl und Rückwärtseliminierung verarbeiten, wenn Sie die Argumente richtig definieren.

Stat
quelle