我的数据子集存在一些问题(子集仍有600个值)。对于实验,我有两个时间点,每个时间点内嵌有三个处理(TT),其中嵌套了5个重复的培养物(A到E)。在这些培养物中的每一种中,个体生物都有20个值。对于这个子集,我想看看治疗之间的差异和同一治疗中时间点之间的差异。
我正在使用R 3.1.2和nlme包
我的代码如下:
model4a <-lme(Velocity~WeekTT, random=~1|Week/TT/Culture, method = "REML", data=body2, weights = varIdent(form=~1|WeekCulture), control=lmeControl(opt="optim"))
STR如下:
data.frame': 600 obs. of 4 variables:
$ Culture : Factor w/ 5 levels "A","B","C","D",..: 1 2 3 4 5 1 2 3 4 5
$ Treatment: Factor w/ 3 levels "T20","T25","T25F": 1 1 1 1 1 2 2 2 2 2
$ Week : num 10 10 10 10 10 10 10 10 10 10 ...
$ Velocity : num 259 279 265 275 256 ...
这是我得到的结果的屏幕抓图和底部的错误(处理发布一些可重现的数据,但认为它可能是一个简单的代码错误)。
过去3周我一直在处理不同的模型,我认为这是一个简单的问题,只是我的大脑已经疲惫不堪,而且我已经过度思考。
答案 0 :(得分:1)
如果WeekTT
是逐周治疗的互动,那么你已经在模型中包含了两次,一次作为固定效果,一次作为随机效果,因为随机效应分组结构{{1 }扩展到Week/TT/Culture
,因此这些固定效果参数无法识别也就不足为奇了。也许,如果你想保持固定效果,只包括三向交互作为随机效应。
Week + Week:TT + Week:TT:Culture
取决于model4a <-lme(Velocity~WeekTT,
random=~1|Week:TT:Culture,
method = "REML", data=body2,
weights = varIdent(form=~1|WeekCulture),
control=lmeControl(opt="optim"))
语句正在做什么(weights
是否表示三向交互?数据转换是否会处理异方差?),您可能只能汇总最低值等级(即计算每个WeekCulture
组合的平均值),如Murtaugh (2007)“生态数据分析的简单性和复杂性”所暗示的那样。那么你根本就不需要混合模型......