Jaka jest krytyczna wartość p używana przez step()
funkcję w R do regresji krokowej? Zakładam, że jest to 0,15, ale czy moje założenie jest prawidłowe? Jak mogę zmienić krytyczną wartość p?
r
regression
p-value
stepwise-regression
Jason Samuels
źródło
źródło
Description
część strony pomocy?step
mówi w całości: Wybierz model oparty na formule przez AIC.Odpowiedzi:
Jak wyjaśniłem w moim komentarzu do twojego drugiego pytania,
step
używa AIC zamiast wartości p.Jednakże, dla pojedynczej zmiennej w czasie AIC nie odpowiadają za pomocą wartości p 0.15 (lub dokładniej, 0.1573)
Rozważ porównanie dwóch modeli, które różnią się jedną zmienną. Zadzwoń do modeli (mniejszy model) i (większy model) i pozwól, aby ich AIC to odpowiednio i .M 1 AIC 0 AIC 1M.0 M.1 AIC0 AIC1
Korzystając z kryterium AIC, użyłbyś większego modelu, jeśli . Tak będzie, gdy . - 2 log L 0 - ( - 2 log L 1 ) > 2AIC1< AIC0 - 2 logL.0- ( - 2 logL.1) > 2
Ale to po prostu statystyka w teście współczynnika wiarygodności. Z twierdzenia Wilksa odrzucimy zero, jeśli statystyka przekroczy górne kwantyle . Jeśli więc skorzystamy z testu hipotez, aby wybrać między mniejszym a większym modelem, wybieramy większy model, gdy .χ 2 1 - 2 log L 0 - ( - 2 log L 1 ) > C αα χ2)1 - 2 logL.0- ( - 2 logL.1) > Cα
Teraz leży na 84,27 percentyla . Dlatego jeśli wybieramy większy model, gdy ma mniejszy AIC, odpowiada to odrzuceniu hipotezy zerowej dla testu dodatkowego składnika o wartości p lubχ 2 1 1 - 0,843 = 0,157 15,7 %2) χ2)1 1 - 0,843 = 0,157 15,7 %
Jak to zmodyfikować?
Łatwy. Zmień
k
parametrstep
z 2 na coś innego. Chcesz zamiast tego 10%? Zrób to 2.7:Chcesz 2,5%? Zestaw
k=5
:i tak dalej.
Jednak pomimo tego, że to rozwiązuje twoje pytanie, radzę uważnie zwrócić uwagę na odpowiedź Franka Harrella na drugie pytanie i poszukać odpowiedzi od wielu statystyk na inne pytania dotyczące regresji stopniowej tutaj, która rada bywa bardzo bardzo konsekwentnie, aby w ogóle unikać stopniowych procedur.
źródło
Jak powiedziano powyżej,
step
funkcja w R opiera się na kryteriach AIC. Ale myślę, że przez wartość p masz na myśli alfa, aby wejść i alfa, aby wyjść. Możesz użyć funkcjistepwise
napisanej przez Paula Rubina i dostępnej tutaj . Jak widać masz argumenty alpha.to.enter i alpha.to.leave, które możesz zmienić. Należy pamiętać, że ta funkcja używa testu F lub równoważnie testu t do wyboru modeli. Co więcej, może obsłużyć nie tylko regresję stopniową, ale także selekcję do przodu i eliminację wsteczną, jeśli poprawnie zdefiniujesz argumenty.źródło