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

如何删除texreg生成的回归表中的GOF行(含R²、调整R²等)

texreg删除指定GOF行的解决方案

你之前设置include.rsquared = FALSE、include.adjrs = FALSE不生效,是因为这类开关参数仅适配R基础lm模型,estimatr::lm_robust属于第三方扩展模型,texreg未为其适配这类参数。以下是两种可行实现方式:

方案1:使用gof_omit参数(最简通用)

gof_omit是texreg的通用参数,支持通过正则匹配删除任意GOF项,适配所有模型类型,修改后的代码如下:

library(estimatr)
library(texreg)

set.seed(42)
x1 <- rnorm(1000)
x2 <- rnorm(1000)
y <- 0.5*x1 + x2 + rnorm(1000)

mod1 <- lm_robust(y ~ x1)
mod2 <- lm_robust(y ~ x1 + x2)

texreg(list(mod1, mod2), 
       gof_omit = "R\\^2|Adj\\. R\\^2|F statistic")

运行后表格将仅保留Num. obs.和RMSE两类GOF行,满足你的删除需求。

方案2:手动修改extract结果(完全可控)

如果需要更精准的控制,避免正则误匹配,可以先提取模型的texreg结构化对象,手动过滤不需要的GOF项:

library(estimatr)
library(texreg)

set.seed(42)
x1 <- rnorm(1000)
x2 <- rnorm(1000)
y <- 0.5*x1 + x2 + rnorm(1000)

mod1 <- lm_robust(y ~ x1)
mod2 <- lm_robust(y ~ x1 + x2)

# 提取模型结构化结果
ext_mod1 <- extract(mod1)
ext_mod2 <- extract(mod2)

# 筛选要保留的GOF索引
keep_idx <- !ext_mod1@gof.names %in% c("R$^2$", "Adj. R$^2$", "F statistic")

# 批量删除不需要的GOF项
ext_mod1@gof <- ext_mod1@gof[keep_idx]
ext_mod1@gof.names <- ext_mod1@gof.names[keep_idx]
ext_mod2@gof <- ext_mod2@gof[keep_idx]
ext_mod2@gof.names <- ext_mod2@gof.names[keep_idx]

# 输出最终表格
texreg(list(ext_mod1, ext_mod2))

两种方案都兼容你使用的texreg 1.37.5和R 4.1.1版本。

内容的提问来源于stack exchange,提问作者Dr. Beeblebrox

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 22:48:02