R markdown将大表包装在pdf文档的页面末尾

时间:2018-10-22 12:53:52

标签: r markdown r-markdown

我正在使用R studio和R markdown(带有knitr)来创建我的结果的pdf或html报告。然后,我使用了函数kable来使表格在PDF输出上看起来不错,或者使用了库htmlTable的函数expss来进行html输出。我创建了一个大表,例如:

cbind(row.number=1:10,iris[1:10,],iris[1:10,],iris[1:10,]) -> tbl1

问题在于此表中的列过多,超出了纸张的宽度。有没有一种方法可以包装表,其中一列重复作为第一列。使用上面示例中的表,输出应类似于:

row.number Sepal.Length Sepal.Width Petal.Length 1 1 5.1 3.5 1.4 2 2 4.9 3.0 1.4 3 3 4.7 3.2 1.3

row.number Petal.Width Species Sepal.Length 1 1 0.2 setosa 5.1 2 2 0.2 setosa 4.9 3 3 0.2 setosa 4.7

row.number Sepal.Width Petal.Length Petal.Width 1 1 3.5 1.4 0.2 2 2 3.0 1.4 0.2 3 3 3.2 1.3 0.2

如此继续。我只是手工创建的,还没有解决问题:)

我在这里看到可以减小表的大小,但这并不依赖于我在寻找什么。 Automatically adjust LaTeX table width to fit pdf using knitr and Rstudio

1 个答案:

答案 0 :(得分:0)

我觉得我可能在这里遗漏了一些明显的东西,但我不明白为什么您不能将表上的行名设置为您的 row.number 列然后只需创建一个循环,为每3列的批处理创建一个表。

不是

cbind(iris[1:10,],iris[1:10,],iris[1:10,]) -> tbl1
rownames(tbl1) <- 1:10
kable(tbl1[,1:3])
kable(tbl1[,4:7])
kable(tbl1[,8:10])

你想做什么?