🔧
tool
相关软件(R代码)
```r # 线性混合效应模型 # install.packages("lme4") library(lme4) # install.packages("lmerTest") library(lmerTest) # 使用sleepstudy数据(sleep deprivation study) data(sleepstudy) # 模型:反应时间 ~ 天数 + (1|受试者) # 固定效应:天数;...
📖 定义
# 线性混合效应模型
# install.packages("lme4")
library(lme4)
# install.packages("lmerTest")
library(lmerTest)
# 使用sleepstudy数据(sleep deprivation study)
data(sleepstudy)
# 模型:反应时间 ~ 天数 + (1|受试者)
# 固定效应:天数;随机效应:受试者截距
model_lmm <- lmer(Reaction ~ Days + (1 | Subject), data = sleepstudy)
summary(model_lmm)
# 随机斜率模型:每个受试者有自己的截距和斜率
model_lmm2 <- lmer(Reaction ~ Days + (Days | Subject), data = sleepstudy)
summary(model_lmm2)
# 计算ICC
# ICC = 随机效应方差 / (随机效应方差 + 残差方差)
variance_components <- as.data.frame(VarCorr(model_lmm))
icc <- variance_components[1, 4] / (variance_components[1, 4] + variance_components[2, 4])
cat("ICC:", icc, "\n")
# 可视化:每个受试者的拟合线
library(ggplot2)
ggplot(sleepstudy, aes(x = Days, y = Reaction, color = Subject)) +
geom_line() +
geom_smooth(method = "lm", se = FALSE) +
theme(legend.position = "none") +
labs(title = "各受试者反应时间随天数的变化")