Capturer une multi-colinéarité élevée dans les modèles de statistiques
Dire que je l'ajustement d'un modèle dans statsmodels
mod = smf.ols('dependent ~ first_category + second_category + other', data=df).fit()
Quand je fais mod.summary()
je peut voir les éléments suivants:
Warnings:
[1] The condition number is large, 1.59e+05. This might indicate that there are
strong multicollinearity or other numerical problems.
Parfois l'avertissement est différent (par exemple basées sur les valeurs propres de la matrice de conception). Comment puis-je capturer haute-multi-colinéarité conditions dans une variable? Est cet avertissement stockées quelque part dans le modèle d'objet?
Aussi, où puis-je trouver une description des champs dans summary()
?
source d'informationauteur Amelio Vazquez-Reina | 2014-09-04
Vous devez vous connecter pour publier un commentaire.
Vous pouvez détecter la haute-multi-colinéarité par l'inspection de l' propres valeurs de matrice de corrélation. Une très faible valeur propre montre que les données sont colinéaires, et le correspondant de vecteur propre montre que les variables sont colinéaires.
Si il n'y a pas de colinéarité dans les données, vous attendez qu'aucun des propres valeurs sont proches de zéro:
Toutefois, si dire
x[4] - 2 * x[0] - 3 * x[2] = 0
puisl'un des propres valeurs (ici le tout premier), est proche de zéro. Le vecteur propre correspondant est:
Ignorant presque zéro coefficients ci-dessus indique fondamentalement
x[0]
x[2]
etx[4]
sont colinéaires (comme prévu). Si l'on normalisexs
valeurs et multiplie par ce vecteur propre, le résultat va osciller autour de zéro avec une petite variance:Noter que
ys.var()
est fondamentalement la valeur propre qui a été proche de zéro.Afin de capturer des multi-linéarité, regardez les propres valeurs de la matrice de corrélation.
Basé sur un question similaire pour R, il ya quelques autres options qui peuvent aider les gens. Je cherchais un numéro unique qui a capturé la colinéarité, et les options incluent le déterminant et le conditionnement de la matrice de corrélation.
Selon l'une des R les réponses, le facteur déterminant de la matrice de corrélation sera "la plage allant de 0 (Colinéarité Parfaite) à 1 (Pas de Colinéarité)". J'ai trouvé le délimitée gamme utile.
Traduit exemple pour déterminant:
Et de la même façon, le conditionnement de la matrice de covariance, l'approche de l'infini avec une parfaite dépendance linéaire.