[R] as.formula and lme ( Fixed effects: Error in as.vector(x, "list") : cannot coerce to vector)

From: Liu Song <liusong_at_stat.umn.edu>
Date: Sat 13 Aug 2005 - 05:07:12 EST


This is a continuing issue with the one on the list a long time ago (I couldn't find a solution to it from the web):



> Using a formula converted with as.formula with lme leads
> to an error message. Same works ok with lm, and with
> lme and a fixed formula.
>
> # demonstrates problems with lme and as.formula
> demo<-data.frame(x=1:20,y=(1:20)+rnorm(20),subj=as.factor(rep(1:2,10)))
> demo.lm1<-lme(y~x,data=demo,random=~1|subj)
> print(summary(demo.lm1))
> newframe<-data.frame(x=1:5,subj=rep(1,5))
> predict(demo.lm1,newframe,level=0)
>
> fma<-as.formula("y~x")
> demo.lm<-lm(fma,data=demo) # ok
> predict(demo.lm,newframe,level=0) # ok
> demo.lm2<-lme(fma,data=demo,random=~1|subj) # looks ok, but isn't
> print(summary(demo.lm2))
>
> #Fixed effects: Error in as.vector(x, "list") : cannot coerce to vector
> #predict(demo.lm2,newframe,level=0) # does not work

Thanks for the detailed report. I can reproduce the problem. It appears that there needs to be an eval early in the lme function so it stores the formula for the fixed effects, not the name of the formula.



Now I follow the suggestion and use :
demo.lm2<-lme(eval(fma),data=demo,random=~1|subj)
#works ok, even with summary(demo.lm2) 
#predict(demo.lm2,newframe,level=0) 
#Error in eval() : Argument "expr" is missing, with no default

How can I fix this problem and get the predict() function to work? Thank you!



Song Liu
School of Statistics
313 FordH
224 Church St. SE
Minneapolis,MN 55455

R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Sat Aug 13 05:14:36 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:39:47 EST