我有受试者内部的生理数据(part
),他们在三轮(round
)中都看过刺激(阅读报纸),每轮有五篇论文(paper
),并且每次回访的次数都有变化(visit
) ) 在报纸上。我有两个固定因素(CONDhier
和CONDabund
)加上相互作用来预测生理状态(例如EDA
),这通常是自回归的。我尝试考虑生理学上的个体差异并产生随机效应(让我们暂时只解决拦截问题),也许还要考虑另一种随机效应造成的疲劳。
因此,我想在R中运行的模型将是SPSS:
MIXED EDA BY CONDhier CONDabund
/FIXED=CONDhier CONDabund CONDhier*CONDabund | SSTYPE(3)
/RANDOM=INTERCEPT | SUBJECT(part) COVTYPE(VC)
/RANDOM=INTERCEPT | SUBJECT(part*round) COVTYPE(VC)
/PRINT=SOLUTION
/METHOD=REML
/REPEATED=visit | SUBJECT(part*round*paper) COVTYPE(AR1).
现在,我了解到,虽然
lme
不能很好地处理交叉术语,但是lmer
(可以毫无问题地处理交叉术语)不能使用不同的协方差结构。我可以运行简单的lme模型,例如 lme(EDA ~ factor(CONDhier) * factor(CONDabund), random= ~1
|part, na.action=na.exclude, data=phys2)
但是更复杂的模型超出了我。我已经读过lme中的交叉术语可以使用如下的随机定义来完成
random=pdBlocked(list(pdCompSymm(~part), pdCompSymm(~round-1), pdCompSymm(~paper-1),
pdCompSymm(~visit-1)))
但这似乎阻止了我的AR1结构和第二次随机拦截。而且我不确定它是否与我的SPSS语法相同。
那么,有什么建议吗?尽管关于lme和lmer的著作很多,但我找不到同时使用交叉术语和AR1的著作。
(此外,lme上的语法似乎还很晦涩:我从几个不同的来源了解到| |将左侧的内容归在右侧的内容之下,/使嵌套的项,〜1是随机截距,〜x是随机斜率和〜1 + x都是,但似乎至少存在:和-1定义,我在任何地方都找不到。是否有一个教程可以解释所有不同的定义?)
最佳答案
考虑一下R包MCMCglmm,它允许使用复杂的混合效果模型。
https://cran.r-project.org/web/packages/MCMCglmm/vignettes/CourseNotes.pdf
尽管实现起来可能很困难,但它可能会解决您遇到的问题。它允许分别给出固定和随机效应公式,例如。
fixed <- formula(EDA ~ CONDhier * CONDabund)
rand <- formula( ~(us(1+ CONDhier):part + us(1+ CONDhier):round + us(1+ CONDhier):paper + us(1+ CONDhier):visit))
随机效应之间的协方差结构以系数形式给出,一旦运行模型,就可以使用
summary()
对象上的MCMCglmm
对其进行检查。关于r - R中具有交叉重复效应和AR1协方差结构的线性混合模型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20124109/