我想循环混合模型和 Tukey 测试。我要做的就是对 3 列(每列包含一个响应)和 4 个子组(总计 = 12)重复拟合和比较。
此处提供了类似的数据框:https ://drive.google.com/open?id=0Bwrsa11LAnrgTXMzWk1fYXR1MHM 。3 个响应是“RESP_1”、“RESP_2”和“RESP_3”列,子组是“层”列的变量。
我通过以下方式获得单个响应和唯一层的模型和调整:
#mixed model
Mlm_RESP_1 <-lme(RESP_1~clay+till, random=~1|strata/point, data=loop_lm_tukey)
#tukey
ls_RSP_1 <- lsmeans(Mlm_RESP_1,pairwise~till,adjust="tukey")
ls_RSP_1$contrasts
cld(ls_RSP_1)
然后,我尝试通过以下方式循环每一列的模型:
#loop model
mlm_RESP <- lapply(c("RESP_1", "RESP_2","RESP_3"), function(k) {
lme(eval(substitute(j ~ clay+till, list(j = as.name(k)))), random = ~1|strata/point, data = loop_lm_tukey)})
从现在开始,我无法使用 lsmeans 包循环 Tukey 比较,因为lapply
返回一个列表,而这个包无法处理这种类。
此外,我怎样才能为每一层循环呢?
任何帮助进行 Tukey 的比较循环将不胜感激。