在 R bookdown 中,如何为 pdf 和 html 输出编写非常大的 table(120 行,8 列)?

In R bookdown, how to code a very large table (120 row, 8 columns) for pdf and html outputs?

在 R bookdown 代码中,我想以一种简洁的方式输出非常大的 table。 我想在我的 pdf 输出 (bookdown::pdf_book)、html 输出 (bookdown::git_book) 中显示一个非常大的 table,并且如果可能的话在电子书中显示 ( bookdown::epub_book) 输出。 我的 table 有大约 120 行和 8 列,其中每个单元格都有不同的长度和格式。有时其中两个单元格的长度约为 25 个字符(如果可能的话,我希望它们在超过单元格的最大长度时自动转到下一行)。 Tha table 可能会自动分部分显示在 pdf 页面上,这是我正在寻找的理想解决方案。 谢谢

kable 功能在较短的 tables 上还可以,但在大的

上不确定。

对于 gitbook,你不必担心太长 table 因为没有页面高度限制。

对于 PDF,您可以按照上面的建议使用 kableExtra。这是格式化长 table 的示例。它还用长文本结束了第 13 列。

---
title: "Untitled"
date: "6/25/2019"
output: bookdown::pdf_book
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```


Here is an example to show the long table by using kableextra.


```{r}
library(kableExtra)

df = rbind(mtcars, mtcars, mtcars)

df$alongcol = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin vehicula tempor ex. Morbi malesuada sagi"

kable(df,
      booktab = TRUE,
      longtable = TRUE,
      caption = "example") %>%
  kable_styling(latex_options = c("repeat_header")) %>%
  column_spec(13, width = "10em")



```