1

我是 R 新手,我是第一次格式化我的回归表。我想在下表中的“工薪阶层”上方添加一行。此行应显示“参考类别:上等”。有人可以指导我一下,也许建议一些有趣的示例/链接,我可以在其中找到使用模型汇总功能的格式化表格?

这是我的代码:

results <-list("Pooled OLS" = Pooled.ols, "Fixed effects" = fixed.effects)
# Coefficients
cm <- c( 'age' = 'Age', 'I(age^2)' = 'Age square', 'wc' = 'Working class','mc' = 'Lower-middle class')
# Output Table
modelsummary(results, stars = TRUE,statistic = 'std.error', type= "html", 
             fmt= '%.4f',coef_map=cm
)

在此处输入图像描述

4

1 回答 1

2

您可以add_rows按如下方式使用参数:

library(modelsummary)

mod <- lm(hp ~ mpg + vs + drat, mtcars)

row <- data.frame("Coefficients" = "Reference category: Upper-class",
                  "Model 1" = "")
attr(row, "position") <- 5
modelsummary(mod, add_rows=row)

在此处输入图像描述

编辑:我最初误解了这个问题,并认为您想添加一条水平线来分隔行。由于当我们想向表中添加自定义行时,这通常很有用,所以我在下面留下我的(错误但相关的)答案。

截至今天(2020-12-03),modelsummary可以生成与四种表格绘图包兼容的模型对象:(kableExtra默认)gtflextablehuxtable。这些包中的每一个都允许您自定义表格的外观,但它们都有不同的方法。

例如,如果您想自定义由 生成的默认 HTML 表格kableExtra,您可以将自定义 CSS 提供给row_spec函数:

library(modelsummary)

mod <- lm(hp ~ mpg + vs + drat, mtcars)

library(kableExtra)
modelsummary(mod, gof_omit=".*") %>%
  row_spec(2, extra_css = "border-bottom: 3px solid")

在此处输入图像描述

请注意,kableExtra对 LaTeX/PDF 输出使用了稍微不同的方法。请参阅包文档

如果您更愿意使用该gt包,您可以设置output参数,然后使用gt'stab_style函数:

library(gt)
modelsummary(mod, output="gt", gof_omit=".*") %>%
  tab_style(style = cell_borders(sides="bottom", weight=px(4)), 
            locations = cells_body(rows = 2))

在此处输入图像描述

于 2020-12-04T02:32:42.970 回答