在R中使用tinytable生成无水平线表头的LaTeX回归表
解决modelsummary+tinytable生成LaTeX回归表时表头水平线问题
问题场景
使用modelsummary配合tinytable生成LaTeX格式的回归表,当前输出的表头存在多余水平线,需要调整为无表头水平线的样式,与目标输出一致。
修改后的代码
library(modelsummary) library(magrittr) library(tinytable) lm1 <- lm(data = mtcars, formula = mpg ~ gear) lm2 <- lm(data = mtcars, formula = mpg ~ gear + vs) lm3 <- lm(data = mtcars, formula = mpg ~ gear + vs + disp) lm4 <- lm(data = mtcars, formula = mpg ~ gear + vs + drat) modelsummary( list(`Model 1` = lm1, `Model 2` = lm2, `Model 3` = lm3), gof_omit = c("AIC|BIC|RMSE|Adj"), coef_omit = "covariate", stars = c('*' = 0.05), title = "Example Table" ) %>% group_tt(j = list("First" = 2, "Second" = 3, "Third" = 4)) %>% group_tt(j = list("Begin" = 2, "Middle" = 3, "End" = 4)) %>% group_tt(j = list("Model A" = 2, "Model B" = 3, "Model C" = 4)) %>% theme_tt("tabular") %>% # 仅保留表格顶部和底部的水平线,移除表头区域的线 print("latex", hline = c(0, nrow(.)))
关键说明
print("latex", hline = c(0, nrow(.)))指定仅在表格最顶部(0行位置后)和最后一行末尾添加水平线,直接移除了表头区域的多余线条,完全匹配期望的输出样式。- 替代方案:也可以用
modify_tt(hline = c(0, nrow(.)))先修改表格样式,再执行print("latex"),效果一致。
内容的提问来源于stack exchange,提问作者Ryan Baxter-King
相关产品推荐
相关产品推荐

