错误变量的长度与Effects程序包不同(找到“(权重)”)

时间:2018-08-01 17:29:03

标签: r effect mixed-models

尝试使用“效果”包从混合效果模型中提取值时出现错误。下面是一个可复制的示例。

#create database.
df<-NULL

df$col1<-as.numeric(c(4,18,10,41,30,40,47,30,41,18,11,16,47,26,20,10,11,11,
           10,22,0,11,20,11,23,17,8,27,17,47,40,28,10,10,40,17,17,
           20,17,11,28,41,10,20,37,22,31,18,17,30,16,11,27,20,10,10,
           28,41,20,20,20,13,11,41,13,10,27,13,18,17,24,6,11,17,10,24,
           17,10,22))

df$col2<-as.factor(c('location01','location01','location01','location01','location01','location01','location01','location01','location01','location01','location01','location01','location01',
          'location01','location01','location03','location03','location03','location03','location03','location03','location03','location03','location05','location05','location05',
           'location05','location05','location08','location08','location08','location08','location08','location08','location08','location08','location08','location17','location17',
           'location17','location17','location20','location20','location20','location20','location20','location20','location20','location20','location20','location23','location23',
           'location23','location23','location23','location23','location23','location23','location23','location26','location26','location26','location26','location26','location31',
           'location31','location31','location31','location31','location31','location31','location31','location31','location34','location34','location34','location34','location34','location34'))

df$col3<-as.factor(c('a','a','a','a','c','c','c','c','c','b','b','b','b','b','b','a','a','a',
                     'a','a','a','a','a','c','c','c','c','c','a','a','a','c','c','c','b','b',
                     'b','c','c','c','c','a','a','a','a','a','b','b','b','b','a','a','a','a',
                     'c','c','c','c','c','b','b','b','b','b','c','c','c','c','b','b','b','b',
                     'b','a','a','a','b','b','b'))


df$col4<-as.factor(c('x','x','x','x','y','y','y','y','y','y','y','y','y','y','y','y','y',
                     'y','y','y','y','y','y','x','x','x','x','x','x','x','x','y','y',
                     'y','y','y','y','x','x','x','x','x','x','x','x','x','y','y','y',
                     'y','y','y','y','y','x','x','x','x','x','x','x','x','x','x','y',
                     'y','y','y','x','x','x','x','x','y','y','y','x','x','x'))

df<-as.data.frame(df)

#run two potential models
M1<-lme(col1 ~ col3*col4,random = ~ 1 | col2, data = df)
M2<-lme(col1 ~ col3*col4, random = ~ 1 | col2,data = df,weights = varIdent(form = ~ 1 | col3), method = "REML")

#both models work, and their results make sense. So now extract values with effects package

effsM1 <- effect("col3*col4", M1) #works!

effsM2 <- as.data.frame(effect("col3*col4", M2))# doesn't work
  

model.frame.default中的错误(公式= col1〜col3 * col4,数据= df,
  :可变长度不同(可找到“(重量)”)

我感觉是因为每种治疗组合的重复次数不同,但这过去并没有给我带来任何问题。

0 个答案:

没有答案