Encontrei exatamente a mesma pergunta e tentei trabalhar. Veja minha resposta detalhada abaixo.
Primeiro de tudo, eu encontrei 4 opções produzindo valores VIF semelhantes em R:
• corvif
comando do pacote AED,
• vif
comando do pacote veicular,
• vif
comando do pacote rms,
• vif
comando do pacote DAAG.
O uso desses comandos em um conjunto de preditores que não incluem fatores / variáveis categóricas ou termos polinomiais é um passo direto. Todos os três comandos produzem a mesma saída numérica, embora o corvif
comando do pacote AED rotule os resultados como GVIF.
No entanto, normalmente, o GVIF só entra em jogo para fatores e variáveis polinomiais. Variáveis que requerem mais de 1 coeficiente e, portanto, mais de 1 grau de liberdade são normalmente avaliadas usando o GVIF. Para termos de um coeficiente, VIF é igual a GVIF.
Portanto, você pode aplicar regras práticas padrão sobre se a colinearidade pode ser um problema, como um limite de 3, 5 ou 10. No entanto, alguns cuidados podem (devem) ser aplicados (consulte: http://www.nkd-group.com/ghdash/mba555/PDF/VIF%20article.pdf ).
No caso de termos com múltiplos coeficientes, como, por exemplo, preditores categóricos, os 4 pacotes produzem resultados diferentes. Os vif
comandos dos pacotes rms e DAAG produzem valores VIF, enquanto os outros dois produzem valores GVIF.
Vamos dar uma olhada nos valores VIF dos pacotes rms e DAAG primeiro:
TNAP ICE RegB RegC RegD RegE
1.994 2.195 3.074 3.435 2.907 2.680
TNAP e ICE são preditores contínuos e Reg é uma variável categórica apresentada pelos manequins RegB para RegE. Nesse caso, RegA é a linha de base. Todos os valores de VIF são bastante moderados e, geralmente, nada para se preocupar. O problema com esse resultado é que ele é afetado pela linha de base da variável categórica. Para ter certeza de não ter um valor VIF acima de um nível aceitável, seria necessário refazer essa análise para cada nível da variável categórica que é a linha de base. Neste caso, cinco vezes.
Aplicando o corvif
comando do pacote AED ou o vif
comando do pacote veicular, os valores GVIF são produzidos:
| GVIF | Df | GVIF^(1/2Df) |
TNAP | 1.993964 | 1 | 1.412078 |
ICE | 2.195035 | 1 | 1.481565 |
Reg | 55.511089 | 5 | 1.494301 |
O GVIF é calculado para conjuntos de regressores relacionados, como a para um conjunto de regressores fictícios. Para as duas variáveis contínuas TNAP e ICE, é o mesmo que os valores VIF anteriores. Para a variável categórica Reg, obtemos agora um valor GVIF muito alto, embora os valores VIF para os níveis únicos da variável categórica fossem todos moderados (como mostrado acima).
G VEuF( 1 / ( 2 × D f) ))G VEuF( 1 / ( 2 × D f) ))O valor da variável categórica é uma medida semelhante para a redução na precisão da estimativa dos coeficientes devido à colinearidade (mesmo que não esteja pronta para citar, consulte também http://socserv2.socsci.mcmaster.ca/jfox/papers/linear- models-problems.pdf ).
G VEuF( 1 / ( 2 × D f) ))G VEuF( 1 / ( 2 × D f) ))
G VEuF( 1 / ( 2 × D f)))G VEuF( 1 / ( 2 × D f) ))G VEuF2 ( 1 / ( 2 × D f) ))< 2