Jakie są „współczynniki aliasowane”?

24

Podczas budowania modelu regresji w R ( lm) często otrzymuję ten komunikat

"there are aliased coefficients in the model"

Co to dokładnie znaczy?

Również z tego powodu predict()daje ostrzeżenie.

Chociaż jest to tylko ostrzeżenie, chcę wiedzieć, w jaki sposób możemy wykryć / usunąć aliowane współczynniki przed zbudowaniem modelu.

Jakie są prawdopodobne konsekwencje zaniedbania tego ostrzeżenia?

Mohit Verma
źródło

Odpowiedzi:

32

Podejrzewam, że nie jest to błąd lm, ale raczej vif(z pakietu car). Jeśli tak, to uważam, że wpadłeś w doskonałą wielokoliniowość . Na przykład

x1 <- rnorm( 100 )
x2 <- 2 * x1
y <- rnorm( 100 )
vif( lm( y ~ x1 + x2 ) )

produkuje błąd.

W tym kontekście „alias” odnosi się do zmiennych, które są liniowo zależne od innych (tj. Powodują doskonałą wielokoliniowość).

Pierwszym krokiem w kierunku rozwiązania jest określenie, które zmienne są winowajcami. Biegać

alias( lm( y ~ x1 + x2 ) )

zobaczyć przykład.

Tamas Ferenci
źródło
Dzięki. Czy „wielokoliniowość” jest tym samym, co „współczynniki aliasowane”?
Mohit Verma,
1
@MohitVerma: W tej terminologii „alias” odnosi się do zmiennych, które są liniowo zależne (tj. Powodują doskonałą wielokoliniowość). Zobacz stat.ethz.ch/R-manual/R-pched/library/stats/html/alias.html . Aktualizuję odpowiedź w ten sposób.
Tamas Ferenci,
3

Często pojawia się, gdy macie osobliwości w X'Xmacierzy regresji (wartości NA w podsumowaniu wyników regresji).

Podstawa R lm()dopuszcza wartości pojedyncze / idealną wielokoliniowość, jak domyślnie singular.ok = TRUE. Inne pakiety / funkcje są bardziej konserwatywne.

Na przykład dla linearHypothesis()funkcji w carpakiecie wartością domyślną jest singular.ok = FALSE. Jeśli masz w swojej regresji doskonałą wielokoliniowość, linearHypothesis()zwróci błąd „w modelu występują aliasy”. Aby poradzić sobie z tym błędem, ustaw singular.ok = TRUE. Uważaj jednak, ponieważ może to maskować idealną wielokoliniowość w regresji.

kupiec
źródło
0

może warto wiedzieć dla niektórych: dostałem ten błąd, gdy dodałem manekiny do regresji. R automatycznie pomija jednego manekina, ale powoduje to błąd w teście vif. więc dla niektórych rozwiązaniem może być ręczne usunięcie jednego manekina.

Poklepać
źródło