基于lmer与mixed函数的LMM分析流程、结果选择及工具咨询
线性混合模型(LMM)分析疑问解答
问题背景
我拟构建线性混合模型(LMM),以paradigm、中心化特质数学焦虑(trait_math_anxiety_centered)及其交互项为固定效应,被试(subject)为随机效应,模型公式为:state_math_anxiety ~ paradigm * trait_math_anxiety_centered + (1|subject)
数据说明
- 状态数学焦虑(
state_math_anxiety)与特质数学焦虑为连续变量,特质数学焦虑已完成中心化处理 paradigm为二分类变量
分析流程
- 用lmerTest包初始化模型:
mm_start_STAI <- lmer(STAI ~ paradigm * AMAS_centered + (1|subject), dat = data_long, REML = FALSE) - 逐步筛选模型:
筛选后最终模型与初始全模型一致。step_lmm_STAI <- step(lmm_start_STAI, ddf = "Satterthwaite", reduce.fixed=TRUE, reduce.random = TRUE, alpha.fixed=0.05, alpha.random=0.05) final_lmm_STAI <- get_model(step_lmm_STAI) - 用afex包转换编码重新拟合:
M1 <- mixed(STAI ~ paradigm * AMAS_centered + (1|subject), dat = data_long)
核心疑问
- 上述分析流程是否存在问题?
lmer与mixed函数的结果存在轻微显著性差异,应选择哪组结果?- 有哪些可用于
mixed模型的系数提取工具?
解答
1. 分析流程的潜在问题
- 逐步模型筛选的风险:使用
step函数基于固定α=0.05做自动筛选,会引入多重检验偏差,可能高估效应的显著性。如果你的研究有明确的理论假设(比如交互项是核心研究目标),建议直接保留初始全模型,无需做数据驱动的模型缩减。 - 编码转换的注意事项:
afex::mixed默认采用效应编码,而lmerTest::lmer默认是虚拟编码,这一步本身合理,但务必在结果报告中明确说明编码方式,避免解读混乱。
2. 结果选择的依据
两组结果的差异源于编码方式不同(虚拟编码vs效应编码)加上自由度计算的细微差别:
- 若关注
paradigm某一水平相对于参照水平的差异(如处理组vs对照组),选择lmer的虚拟编码结果更直观; - 若关注
paradigm两个水平的平均效应对比,或需要与其他效应编码的分析统一,选择mixed的结果; - 若差异仅在显著性边缘(如p值0.049 vs 0.051),建议完整报告统计量(系数、标准误、t值/p值),同时说明编码方式的差异,而非只选其中一组。
3. mixed模型的系数提取工具
afex::mixed返回的afex_aov类对象可通过以下工具提取系数:
coef(M1):返回包含固定效应和随机效应系数的列表;emmeans::emmeans(M1, ~ paradigm * AMAS_centered):提取系数的同时支持简单效应分析,适合交互项解读;broom.mixed::tidy(M1, effects = "fixed"):broom.mixed实际支持afex_aov对象,指定effects参数可精准提取固定效应;summary(M1)$coefficients:直接从模型摘要中提取固定效应的系数、标准误、t值和p值;parameters::model_parameters(M1):parameters包对混合模型兼容性好,输出格式化系数表,支持效应编码解读。
内容的提问来源于stack exchange,提问作者sun Yang
相关产品推荐
相关产品推荐

