Erreur dans glm() dans R
Je voudrais effectuer une régression logistique, mais des erreurs - ne sais pas d'où l'erreur peut être.
La structure de mes données:
'data.frame': 3911 obs. of 29 variables:
$ vn1 : Factor w/ 2 levels "maennlich","weiblich": 1 1 2 1 1 2 1 1 1 1 ...
$ vn2c : int 1976 1943 1927 1949 1965 1977 1986 1976 1944 1994 ...
$ vn35 : Factor w/ 7 levels "keine Angabe",..: 6 4 5 3 3 5 7 6 5 5 ...
$ v39 : Factor w/ 8 levels "keine Angabe",..: 8 4 5 8 7 7 5 6 6 6 ...
$ n39 : Factor w/ 9 levels "keine Angabe",..: 4 4 4 4 4 4 4 4 4 4 ...
$ v41 : Factor w/ 7 levels "keine Angabe",..: 6 5 5 2 7 7 5 5 6 6 ...
$ n41 : Factor w/ 7 levels "keine Angabe",..: 4 4 4 4 4 4 4 4 4 4 ...
$ vn42a : Factor w/ 8 levels "keine Angabe",..: 8 4 8 8 5 5 6 6 6 4 ...
$ vn42b : Factor w/ 8 levels "keine Angabe",..: 5 4 7 5 5 5 6 7 6 5 ...
$ vn43a : Factor w/ 8 levels "keine Angabe",..: 7 5 8 6 2 6 6 2 7 7 ...
$ vn43b : Factor w/ 8 levels "keine Angabe",..: 7 4 6 4 4 7 6 2 6 5 ...
$ vn62 : Factor w/ 14 levels "keine Angabe",..: 8 11 9 2 3 3 8 6 5 7 ...
$ vn119a : Factor w/ 15 levels "keine Angabe",..: 6 3 8 14 10 8 14 8 6 6 ...
$ ostwest : Factor w/ 2 levels "Ost","West": 2 2 2 2 2 2 2 2 2 2 ...
$ prefmerkel : Factor w/ 2 levels "Steinbrueck",..: 1 2 2 NA NA NA 2 2 1 1 ...
$ angst : num 1 3 2 4 4 2 0 1 2 2 ...
$ crisismerkel : num 0 4 3 0 1 1 3 2 2 2 ...
$ leadership42 : Factor w/ 5 levels "trifft ueberhaupt nicht zu",..: 5 1 5 5 2 2 3 3 3 1 ...
$ leadership43 : Factor w/ 5 levels "trifft ueberhaupt nicht zu",..: 4 2 5 3 NA 3 3 NA 4 4 ...
$ leadership : num 1 -1 0 2 NA -1 0 NA -1 -3 ...
$ trustworthiness42: Factor w/ 5 levels "trifft ueberhaupt nicht zu",..: 2 1 4 2 2 2 3 4 3 2 ...
$ trustworthiness43: Factor w/ 5 levels "trifft ueberhaupt nicht zu",..: 4 1 3 1 1 4 3 NA 3 2 ...
$ trustworthiness : num -2 0 1 1 1 -2 0 NA 0 0 ...
$ ideology : num 5 8 6 NA NA NA 5 3 2 4 ...
$ pid : Factor w/ 10 levels "none","CDU/CSU",..: 3 2 5 1 7 5 1 5 3 3 ...
$ age : num 37 70 86 64 48 36 27 37 69 19 ...
$ agegroups : Factor w/ 7 levels "bis 25 Jahre",..: 3 6 7 5 4 3 2 3 6 1 ...
$ gender : Factor w/ 2 levels "male","female": 1 1 2 1 1 2 1 1 1 1 ...
$ region : Factor w/ 2 levels "west","east": 1 1 1 1 1 1 1 1 1 1 ...
La régression de la commande retourne l'erreur suivante:
summary(glm(prefmerkel~angst+crisismerkel+leadership+trustworthiness+ideology+pid+agegroups+gender+region,data=gles))
Error in glm.fit(x = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, :
NA/NaN/Inf in 'y'
In addition: Warning messages:
1: In Ops.factor(y, mu) : ‘-’ nicht sinnvoll für Faktoren
2: In Ops.factor(eta, offset) : ‘-’ nicht sinnvoll für Faktoren
3: In Ops.factor(y, mu) : ‘-’ nicht sinnvoll für Faktoren
- Peut-être que vos variables ne doivent pas être des facteurs, essayez de modifier leurs types
- Peut-être
y
ne peut pas contenir deNA
$ prefmerkel : Factor w/ 2 levels "Steinbrueck",..: 1 2 2 NA NA NA 2 2 1 1 ...
erreurNA/NaN/Inf in 'y'
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas avoir de facteur/catégorique variables de réponse.
Illustration:
Si vous voulez vraiment faire une régression logistique, vous devriez les changer en 0 et 1, ou le FAUX et le VRAI, et l'utilisation
family=binomial
:Si votre variable binomiale mention "family=binomial'. Cela permettra de résoudre le problème
Cette page est de montrer sur la recherche pour cette erreur, voulez ajouter une autre raison de ne pas le faire avec linéaire vs régression logistique. J'ai eu le même problème que Yulia, où j'ai eu transformées en log certains de mes prédicteurs ce qui entraîne l'erreur discuté ici.
La raison de l'erreur, c'est que si vous avez des lignes avec la valeur 0 avant de journal-de la transformation, de ces devenir
-Inf
qui entraîne la régression de lancer une erreur. La solution est de s'abstenir de journal-la transformation de ces variables, ou assurez-vous que vous n'avez pas de 0 lignes évaluées (voir, par exemple,discussion sur la pile d'échange).Dans mon cas ce n'était pas de la ci-dessus. J'ai transformées en log sur de l'asymétrique vers la droite variables et quand je l'ai utilisé, connectez-vous régression a donné lieu à cette erreur. Lorsque j'ai utilisé l'original (non transformées) variante - il travaillé parfaite.