Bonjour,
Je ne sais pas trop d'ou provient ton problème mais je pense que tu peux t'en sortir en regardant les contrastes associés à ton facteur :
Code : Tout sélectionner
y<- rnorm(90)
x <- gl(3,30,labels=c("adulte","jeune","vieux"))
glm(y~x)
Call: glm(formula = y ~ x)
Coefficients:
(Intercept) xadulte xvieux
-0.331954 0.005436 0.129585
Degrees of Freedom: 89 Total (i.e. Null); 87 Residual
Null Deviance: 75.28
Residual Deviance: 74.96 AIC: 247
contrasts(x)
jeune vieux
adulte 0 0
jeune 1 0
vieux 0 1
# et pour mettre dans ce cas jeune en référence par exemple :
contrasts(x) <- contr.treatment(levels(x),2)
contrasts(x)
adulte vieux
adulte 1 0
jeune 0 0
vieux 0 1
glm(y~x)
Call: glm(formula = y ~ x)
Coefficients:
(Intercept) xadulte xvieux
-0.331954 0.005436 0.129585
Degrees of Freedom: 89 Total (i.e. Null); 87 Residual
Null Deviance: 75.28
Residual Deviance: 74.96 AIC: 247
Après à toi de modifier en fonction des contrats que tu observes pour ta variable. Au lieu de passer par un factor(as.character(...),...) tu peux aussi utiliser la fonction relevel(fac,ref) qui te permet de mettre le level que tu veux en référence et tu arrives au même résultat.
En espérant t'avoir aidé même si je ne sais pas d'où peut provenir le souci.
Maxime