You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为lme4线性混合效应模型计算稳健标准误?

为线性混合效应模型计算稳健标准误(merDeriv + clubSandwich)

步骤1:安装并加载所需包

install.packages(c("lme4", "merDeriv", "clubSandwich"))
library(lme4)
library(merDeriv)
library(clubSandwich)

步骤2:确认原模型拟合

先确保你已经正确拟合了线性混合效应模型:

# 你的原模型代码
TD_PE_analysis1 <- lmer(PE ~ learn_prof * trial * condition + (1|subject) + (1|image), data=dat)

步骤3:提取模型得分矩阵(merDeriv)

merDeriv的get_scores()函数会提取模型的得分信息,这是计算稳健标准误的核心输入:

model_scores <- get_scores(TD_PE_analysis1)

步骤4:计算稳健方差-协方差矩阵(clubSandwich)

用clubSandwich的vcovCR()函数生成稳健VC矩阵。针对你的研究设计,按受试者(subject)聚类是最合理的选择(同一受试者的60轮观测存在非独立性):

# 基于受试者聚类的CR2型稳健标准误
vcov_robust <- vcovCR(TD_PE_analysis1, cluster = dat$subject, type = "CR2")
  • type = "CR2":小样本下表现最优的稳健标准误类型,推荐使用;若需其他类型,可替换为"CR1"或"CR0"。
  • 若需考虑image的非独立性,可尝试cluster = interaction(dat$subject, dat$image),但优先推荐受试者层面聚类。

步骤5:输出带稳健标准误的模型结果

用coef_test()函数输出系数的统计检验结果,包含稳健标准误、z/t值和p值:

# 用z检验输出结果
coef_test(TD_PE_analysis1, vcov = vcov_robust, test = "z")

# 若偏好t检验(基于聚类自由度),可改为:
# coef_test(TD_PE_analysis1, vcov = vcov_robust, test = "t")

关键说明

  • 你通过Fligner检验发现的方差不齐问题,稳健标准误能有效缓解异方差对统计推断的干扰,这个解决方案适配你的问题。
  • 随机效应部分仍沿用原模型的设定,稳健标准误仅修正固定效应的推断结果。

内容的提问来源于stack exchange,提问作者Shannon Cahalan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 18:42:51