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

关于stargazer是否仍支持starprep及回归表格生成报错的技术咨询

关于stargazer是否仍支持starprep及回归表格生成报错的技术咨询

看起来你遇到的问题核心是starprep函数找不到,而之前能正常运行,大概率是包依赖或者会话环境的问题,我来帮你梳理下可能的解决思路:

1. 先确认starprep的归属包是否已加载

首先要明确:starprep不是stargazer包自带的函数,它属于texreg包的工具函数。如果你的R会话重启后没加载texreg,就会出现“找不到starprep”的报错。

解决步骤:

  • 先安装(如果没装过)并加载texreg包:
install.packages("texreg") # 仅第一次需要安装
library(texreg)

加载完成后再重新运行你的stargazer代码试试。

2. 检查starprep的参数是否正确

从你的代码注释来看,你想做聚类稳健标准误(按year聚类),但当前的starprep调用里没指定聚类变量,可能会导致计算逻辑不符合预期,甚至触发隐藏错误。建议补充cluster参数:

se = starprep(tax_GD, tax_GDfe, se_type = "stata", cluster = dat$year),

3. 备选方案:不依赖starprep,手动计算稳健标准误

如果不想依赖texreg包,也可以用sandwich包直接计算稳健标准误,然后传给stargazer的se参数,兼容性更强:

# 先加载必要的包
library(sandwich)
library(lmtest)

# 分别计算两个模型的稳健标准误
# 第一个模型:普通稳健标准误
se_tax_GD <- sqrt(diag(vcovHC(tax_GD, type = "HC1")))
# 第二个模型:按year聚类的稳健标准误
se_tax_GDfe <- sqrt(diag(vcovCL(tax_GDfe, cluster = ~year, type = "HC1")))

# 传入stargazer
stargazer(tax_GD, tax_GDfe, type = "html",
          title = "Regression of <em> Tax </em> on GDPppg",
          notes.label = "P-Values",
          notes = "Standard errors are robust",
          df = FALSE,
          notes.align = "l",
          covariate.labels = "GDP",
          dep.var.labels = c("Taxes"),
          se = list(se_tax_GD, se_tax_GDfe), # 手动传入标准误列表
          omit = c("iso3c", "year"),
          out = "fixed_effects_GDPTAX.html",
          add.lines = list(c('Fixed effects', 'No', 'Yes')))

额外排查点

  • 检查stargazer和texreg的版本:如果是最近更新了包,可能存在参数兼容问题,尝试回退到之前能用的版本(比如用devtools::install_version("stargazer", version = "x.x.x"))
  • 确认回归对象tax_GD和tax_GDfe是有效的lm/felm等回归模型,没有损坏或格式错误

备注:内容来源于stack exchange,提问作者Wilson Okoth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 10:49:38