Como calcular o fator de inflação de variância (vif) no sas
Na análise de regressão, a multicolinearidade ocorre quando duas ou mais variáveis preditoras são altamente correlacionadas entre si, de modo que não fornecem informações únicas ou independentes no modelo de regressão.
Se o grau de correlação entre as variáveis for alto o suficiente, isso pode causar problemas no ajuste e na interpretação do modelo de regressão.
Uma forma de detectar a multicolinearidade é usar uma métrica conhecida como fator de inflação de variância (VIF) , que mede a correlação e a força da correlação entre variáveis explicativas em um modelo de regressão .
Este tutorial explica como calcular VIF no SAS.
Exemplo: calculando VIF em SAS
Para este exemplo, criaremos um conjunto de dados que descreve os atributos de 10 jogadores de basquete:
/*create dataset*/ data my_data; input rating points assists rebounds; datalines ; 90 25 5 11 85 20 7 8 82 14 7 10 88 16 8 6 94 27 5 6 90 20 7 9 76 12 6 6 75 15 9 10 87 14 9 10 86 19 5 7 ; run ; /*view dataset*/ proc print data =my_data;
Digamos que queremos ajustar um modelo de regressão linear múltipla usando pontuação como variável de resposta e pontos , assistências e rebotes como variáveis preditoras.
Podemos usar PROC REG para ajustar este modelo de regressão com a opção VIF para calcular valores VIF para cada variável preditora no modelo:
/*fit regression model and calculate VIF values*/ proc reg data =my_data; model rating = points assists rebounds / lively ; run ;
Na tabela Estimativas de Parâmetros , podemos ver os valores VIF para cada uma das variáveis preditoras:
- pontos: 1,76398
- assistências: 1,96591
- rebotes: 1,17503
Nota: Ignore o VIF para “Intercept” no modelo, pois este valor não é relevante.
O valor VIF começa em 1 e não tem limite superior. Uma regra geral para interpretar VIFs é:
- Um valor 1 indica que não há correlação entre uma determinada variável preditora e qualquer outra variável preditora no modelo.
- Um valor entre 1 e 5 indica uma correlação moderada entre uma determinada variável preditora e outras variáveis preditoras no modelo, mas muitas vezes não é suficientemente grave para exigir atenção especial.
- Um valor superior a 5 indica uma correlação potencialmente séria entre uma determinada variável preditora e outras variáveis preditoras no modelo. Nesse caso, as estimativas dos coeficientes e os valores p nos resultados da regressão provavelmente não são confiáveis.
Como cada um dos valores VIF das variáveis preditoras em nosso modelo de regressão é próximo de 1, a multicolinearidade não é um problema em nosso exemplo.
Como lidar com a multicolinearidade
Se você determinar que a multicolinearidade é um problema no seu modelo de regressão, há várias maneiras comuns de resolvê-lo:
1. Remova uma ou mais variáveis altamente correlacionadas.
Esta é a solução mais rápida na maioria dos casos e muitas vezes é uma solução aceitável porque as variáveis que você remove são redundantes de qualquer maneira e adicionam poucas informações exclusivas ou independentes ao modelo.
2. Combina linearmente as variáveis preditoras de alguma forma, como adicioná-las ou subtraí-las de alguma forma.
Ao fazer isso, você pode criar uma nova variável que englobe as informações de ambas as variáveis e não terá mais um problema de multicolinearidade.
3. Realize uma análise projetada para levar em conta variáveis altamente correlacionadas, como análise de componentes principais ou regressão de mínimos quadrados parciais (PLS).
Essas técnicas são projetadas especificamente para lidar com variáveis preditoras altamente correlacionadas.
Recursos adicionais
Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:
Como realizar regressão linear múltipla no SAS
Como criar um gráfico residual no SAS
Como calcular a distância de cozimento no SAS