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

如何在R的Stargazer输出表格中为预测值标题行添加分隔线?

问题

在R语言中使用stargazer包汇报两个回归模型时,通过add.lines()函数在表格末尾添加了预测值区域,但希望在“Predicted Values on x Values”行下方添加一条类似“Observations”行的独立分隔线,询问可行的实现方法。

生成回归数据的代码:

x <- 1:100
y <- rnorm(100, 4*x, 5)
mod1 <- lm(y ~ x)
mod2 <- lm(y ~ 1)
se1 <- summary(mod1)$coef[2,2]
se2 <- summary(mod2)$coef[1,2]
mod1.pred1 <- predict(mod1, newdata=data.frame(x=1))
mod2.pred1 <- predict(mod2, newdata=data.frame(x=1))
mod1.pred2 <- predict(mod1, newdata=data.frame(x=2))
mod2.pred2 <- predict(mod2, newdata=data.frame(x=2))

原生成表格的Stargazer代码:

stargazer(mod1, mod2, se = list(se1, se2), out="Results.html", notes="Two Models", keep.stat="n", type = "text", 
      table.layout ="ldmc#-t-s-a=n",
      add.lines = list(
        c("Predicted Values on x Values"),
        c("", "", "", ""), # add empty list element
        c("Predict when x=1",mod1.pred1,mod2.pred1),
        c("Predict when x=2",mod1.pred2,mod2.pred2)),
      add.lines.separator = c(1) # add separator after fourth element)
解决方法

可以通过两种方式实现需求:

方式一:手动添加分隔线行

在add.lines列表中,标题行之后直接添加一行由分隔符(文本表格用---)组成的元素,模拟原生分隔线效果:

stargazer(mod1, mod2, se = list(se1, se2), out="Results.html", notes="Two Models", keep.stat="n", type = "text", 
      table.layout ="ldmc#-t-s-a=n",
      add.lines = list(
        c("Predicted Values on x Values"),
        c("---", "---", "---", "---"), # 添加分隔线行
        c("Predict when x=1",mod1.pred1,mod2.pred1),
        c("Predict when x=2",mod1.pred2,mod2.pred2))
)

方式二:利用add.lines.separator参数精准控制

add.lines.separator参数接受一个向量,每个元素对应要在第几条add.lines行后添加分隔线。将其设置为c(1),即可在标题行(第1条add.lines元素)下方自动添加分隔线,同时移除原代码中的空行元素:

stargazer(mod1, mod2, se = list(se1, se2), out="Results.html", notes="Two Models", keep.stat="n", type = "text", 
      table.layout ="ldmc#-t-s-a=n",
      add.lines = list(
        c("Predicted Values on x Values"),
        c("Predict when x=1",mod1.pred1,mod2.pred1),
        c("Predict when x=2",mod1.pred2,mod2.pred2)),
      add.lines.separator = c(1) # 在第1条add.line后添加分隔线
)

注:若使用HTML输出(type="html"),分隔线会自动适配HTML表格的边框样式,无需手动修改分隔符。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 09:31:01