Natrafiłem na dokładnie to samo pytanie i próbowałem przejść przez to. Zobacz moją szczegółową odpowiedź poniżej.
Po pierwsze znalazłem 4 opcje dające podobne wartości VIF w R:
• corvif
polecenie z pakietu AED,
• vif
polecenie z pakietu samochodowego,
• vif
polecenie z pakietu rms,
• vif
polecenie z pakietu DAAG.
Używanie tych poleceń w zestawie predyktorów, nie uwzględniając żadnych czynników / zmiennych kategorialnych lub terminów wielomianowych, jest oczywiste. Wszystkie trzy polecenia generują takie same dane liczbowe, mimo że corvif
polecenie z pakietu AED oznaczy wyniki jako GVIF.
Zazwyczaj jednak GVIF wchodzi w grę tylko w przypadku czynników i zmiennych wielomianowych. Zmienne, które wymagają więcej niż 1 współczynnik, a tym samym więcej niż 1 stopień swobody, są zazwyczaj oceniane za pomocą GVIF. Dla terminów o jednym współczynniku VIF równa się GVIF.
W związku z tym możesz zastosować standardowe reguły dotyczące tego, czy kolinearność może stanowić problem, takie jak próg 3, 5 lub 10. Można jednak zachować ostrożność (patrz: http://www.nkd-group.com/ghdash/mba555/PDF/VIF%20article.pdf ).
W przypadku terminów o wielu współczynnikach, takich jak np. Predyktory jakościowe, 4 pakiety dają różne wyniki. Te vif
polecenia z RMS i pakietów Daag produkować wartości Vif, natomiast dwóch pozostałych wartości produkcji GVIF.
Najpierw spójrzmy na wartości VIF z pakietów rms i DAAG:
TNAP ICE RegB RegC RegD RegE
1.994 2.195 3.074 3.435 2.907 2.680
TNAP i ICE są ciągłymi predyktorami, a Reg jest kategoryczną zmienną przedstawianą przez manekiny RegB do RegE. W takim przypadku RegA jest punktem odniesienia. Wszystkie wartości VIF są raczej umiarkowane i zwykle nie ma się o co martwić. Problem z tym wynikiem polega na tym, że ma na to wpływ linia podstawowa zmiennej kategorialnej. Aby mieć pewność, że nie ma wartości VIF powyżej dopuszczalnego poziomu, konieczne byłoby powtórzenie tej analizy dla każdego poziomu zmiennej kategorialnej będącej linią bazową. W tym przypadku pięć razy.
Stosując corvif
polecenie z pakietu AED lub vif
polecenie z pakietu samochodowego, generowane są wartości GVIF:
| GVIF | Df | GVIF^(1/2Df) |
TNAP | 1.993964 | 1 | 1.412078 |
ICE | 2.195035 | 1 | 1.481565 |
Reg | 55.511089 | 5 | 1.494301 |
GVIF jest obliczany dla zestawów powiązanych regresorów, takich jak zestaw atrapy regresorów. Dla dwóch zmiennych ciągłych TNAP i ICE jest to to samo co wcześniej wartości VIF. Dla zmiennej jakościowej Reg otrzymujemy teraz jedną bardzo wysoką wartość GVIF, mimo że wszystkie wartości VIF dla pojedynczych poziomów zmiennej jakościowej były umiarkowane (jak pokazano powyżej).
G Vjafa( 1 / ( 2 × D f) )G Vjafa( 1 / ( 2 × D f) )wartość zmiennej jakościowej jest podobną miarą dla zmniejszenia precyzji oszacowania współczynników z powodu kolinearności (chociaż nie jest jeszcze gotowa do cytowania, spójrz również na http://socserv2.socsci.mcmaster.ca/jfox/papers/linear- modele-problemy.pdf ).
G Vjafa( 1 / ( 2 × D f) )G Vjafa( 1 / ( 2 × D f) )
G Vjafa( 1 / ( 2 × D f) )G Vjafa( 1 / ( 2 × D f) )G Vjafa2 ( 1 / ( 2 × D f) )< 2