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

如何将R语言rms包lrm()函数的返回结果分别提取为data.frame格式

lrm输出结果拆分提取方案

操作前确保已加载rms包:

library(rms)

你可以直接通过lrm返回的模型对象自带的属性提取对应内容,不需要额外解析打印的文本结果:

1 提取模型统计量表(对应需求中的df1)

lrm模型对象的stats属性已经存储了所有打印输出的模型拟合、判别指数相关的统计量,为命名向量格式,直接转成data.frame即可:

# 提取所有模型统计量
stats_vec <- f$stats
# 转成两列格式的data.frame,可按需调整列名
df1 <- data.frame(
  指标名称 = names(stats_vec),
  指标值 = as.numeric(stats_vec)
)

打印f时展示的样本量、LR卡方、自由度、P值、R²、C指数、Dxy等所有指标都在stats_vec中,如果你需要完全还原打印输出的三列排版(模型似然比检验、判别指数、秩判别指数),按名称从stats_vec里提取对应指标组合成多列的data.frame即可。

2 提取系数表(对应需求中的df2)

系数及显著性检验结果可以直接通过模型摘要的系数矩阵提取,转成data.frame即可:

# 提取系数矩阵
coef_mat <- coef(summary(f))
# 转成data.frame并重命名列,和打印输出的列名一致
df2 <- as.data.frame(coef_mat)
colnames(df2) <- c("Coef", "S.E.", "Wald Z", "Pr(>|Z|)")

3 整合为目标结构

mydf <- list(df1 = df1, df2 = df2)
# 调用方式和需求完全匹配
mydf$df1
mydf$df2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 11:24:03