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

能否从R线性模型的$terms属性中提取系数名称?

R线性模型自动提取系数名生成矩阵方案

你可以直接用R内置的属性提取函数实现需求,无需安装额外第三方包,具体用法如下:

场景1:仅提取自变量作为行名(不含截距项,匹配示例需求)

直接提取model$terms的term.labels属性即可自动获取所有自变量的名称,不管后续模型新增/删除变量,都会自动同步更新:

# 自动提取所有自变量名
rows <- attr(model$terms, "term.labels")
cols <- c("Value")
# 生成矩阵,nrow自动匹配自变量数量,无需手动指定
matrix_test <- matrix(c(1), nrow = length(rows), ncol = 1, byrow = TRUE, dimnames = list(rows, cols))

运行后输出结果和你给出的示例完全一致:

Value
test_x     1

场景2:提取所有系数名作为行名(包含截距项)

如果需要把截距也包含进矩阵行名,直接提取系数向量的名称即可:

# 自动提取包含截距在内的所有系数名
rows_all <- names(model$coefficients)
cols <- c("Value")
# 代入系数值生成矩阵
matrix_test_all <- matrix(model$coefficients, nrow = length(rows_all), ncol = 1, dimnames = list(rows_all, cols))

运行后输出结果:

Value
(Intercept) 0.04047742
test_x      0.98198305

以上两种方法都完全适配变量增删的场景,无需手动修改行名配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:36:04