2013-10-16 66 views
0

当我试图如下错误使用LME功能

mydata <- read.table(
    "H:/edu/Multivariat/HCMpart2.TXT", header=TRUE, sep="\t", 
    na.strings="*", dec=",", strip.white=TRUE 
) 
mydata = data.frame(mydata) 

summary(lme(mydata$x~1+mydata$grp+mydata$var, random~1|mydata$id)) 

其中x包含我的价值观,GRP和VAR执行LME功能“不能强迫类的‘公式’'成data.frame”代表导致x值的哪些组和变量,id是患者的id。

而且HCMpart2.txt包含一个带有“id grp var x”标题的页眉,以及所有这些标签的相应值。我试图使用“as.numeric”函数将这些因素转换为数字因子,但它没有完成我的问题。

当我试图执行LME功能得到以下

Error in as.data.frame.default(data) : 
cannot coerce class '"formula"' into a data.frame 

谁能帮助?我的印象是我做的一切都是正确的下... 问候 Cenderze

+4

您缺少'='符号。它应该是'random =〜1 | mydata $ id'。 – shadow

回答

4

三两件事:

就像影子说,你错过了一个等于在随机参数的迹象。

lme有一个data的说法,停止你不得不用很多$标志写难看的代码。

隐含地包含截距。

summary(model <- lme(x ~ grp + var, mydata, random = ~ 1 | id))