[R] glm prb (Error in `contrasts<-`(`*tmp*`, value = "contr.treatment") : )

peter dalgaard pdalgd at gmail.com
Mon Aug 30 10:35:46 CEST 2010


On Aug 29, 2010, at 10:24 PM, David Winsemius wrote:

> 
> On Aug 29, 2010, at 3:13 PM, moleps wrote:
> 
>> 
>> glm(A~B+C+D+E+F,family = binomial(link = "logit"),data=tre,na.action=na.omit)
>> Error in `contrasts<-`(`*tmp*`, value = "contr.treatment") :
>> contrasts can be applied only to factors with 2 or more levels
>> 
>> however,
>> 
>> glm(A~B+C+D+E,family = binomial(link = "logit"),data=tre,na.action=na.omit)
>> 
>> runs fine
>> 
>> glm(A~B+C+D+F,family = binomial(link = "logit"),data=tre,na.action=na.omit)
>> 
>> runs fine
>> 
>> 
>> 
>> glm(A~E+F,family = binomial(link = "logit"),data=tre,na.action=na.omit)
>> Error in `contrasts<-`(`*tmp*`, value = "contr.treatment") :
>> contrasts can be applied only to factors with 2 or more levels
>> 
>> Why is this? Could it be due to collinearity between the two?
> 
> Perhaps, at least to the extent that the term "collinearity" is an appropriate term for factor interactions. The obvious question at this point is: What does:
> 
> with( tre, table(E,F) )   # show?

Yes. Also notice the pattern of missing values. A likely scenario for the error would be to have E and F being something like "gender" and "menarche", where the latter is absent for boys.

-- 
Peter Dalgaard
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com



More information about the R-help mailing list