- 解决办法是设定行与行之间的分割方式,即 linesep 参数,比如我这里设置为
linesep = c('', '', '', '', '', '\\midrule')
第六行后的分割符是画一条线
library(kableExtra)
db <- mtcars[, 1:7]
db2 <- cbind(rownames(db), db)
colnames(db2) <- c("Methods", rep(c("Bias", "RMSE"), 3), "")
kable(db2,
format = "latex", booktabs = TRUE, escape = T, row.names = F,
longtable = T, caption = "第1种类型的统计表格样式",
linesep = c('', '', '', '', '', '\\midrule')
) %>%
kable_styling(
latex_options = c("striped", "hold_position", "repeat_header"),
full_width = F, position = "center",stripe_color="white"
) %>%
add_header_above(c(" ",
"$\\\\sigma^2$" = 2, "$\\\\phi$" = 2,
"$\\\\tau^2$" = 2, "$r=\\\\delta/\\\\phi$" = 1
), escape = F) %>%
footnote(
general_title = "注:", title_format = "italic", threeparttable = T,
general = "* 星号表示的内容很长很长很长很长很长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长"
)
解决办法来自 <https://stackoverflow.com/questions/45409750/get-rid-of-addlinespace-in-kable> 和 knitr 的仓库, <https://github.com/yihui/knitr/blob/f467b6b27e1fee71bf0baa52ba13e048b66a215d/R/table.R#L211>
- 设置
repeat_header_text = "(续)"
即可,参考文档的第六页 <http://haozhu233.github.io/kableExtra/awesome_table_in_pdf.pdf>
library(kableExtra)
db <- mtcars[, 1:7]
db2 <- cbind(rownames(db), db)
colnames(db2) <- c("Methods", rep(c("Bias", "RMSE"), 3), "")
kable(db2,
format = "latex", booktabs = TRUE, escape = T, row.names = F,
longtable = T, caption = "第1种类型的统计表格样式",
linesep = c("", "", "", "", "", "\\midrule")
) %>%
kable_styling(
latex_options = c("hold_position", "repeat_header"),
full_width = F, position = "center", repeat_header_text = "(续)"
) %>%
add_header_above(c(" ",
"$\\\\sigma^2$" = 2, "$\\\\phi$" = 2,
"$\\\\tau^2$" = 2, "$r=\\\\delta/\\\\phi$" = 1
), escape = F) %>%
footnote(
general_title = "注:", title_format = "italic", threeparttable = T,
general = "* 星号表示的内容很长很长很长很长很长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长"
)