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

如何将lmer模型系数转换为含术语列的数据框?

解决方案

方法一:Base R 原生处理

不需要额外安装包,直接通过提取行名并转为列的方式实现:

# 将系数矩阵转为数据框
coef_df <- as.data.frame(sum.work$coefficients)
# 添加Term列,提取原矩阵的行名
coef_df$Term <- rownames(coef_df)
# 调整列顺序,把Term列移到最前面
coef_df <- coef_df[, c("Term", colnames(coef_df)[-ncol(coef_df)])]
# 清除行名,得到干净的数据框
rownames(coef_df) <- NULL

方法二:使用broom.mixed 包(推荐)

broom.mixed 专门用于整理混合效应模型的输出,能直接生成规范的整洁数据框,非常适合后续用flextable制作表格:

# 先安装包(首次使用时)
# install.packages("broom.mixed")
library(broom.mixed)

# 提取固定效应的整洁结果
tidy_coef <- tidy(lmer.work, effects = "fixed")
# 调整列名与原输出一致(可选,根据需求调整)
tidy_coef <- tidy_coef[, c("term", "estimate", "std.error", "df", "statistic", "p.value")]
colnames(tidy_coef) <- c("Term", "Estimate", "Std. Error", "df", "t value", "Pr(>|t|)")

两种方法得到的数据框都可以直接传入flextable()函数制作演示用表格。


内容的提问来源于stack exchange,提问作者Shawn Hemelstrand

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 11:30:57