【问题标题】:How to group columns in R markdown?如何在 R markdown 中对列进行分组?
【发布时间】:2018-04-13 00:56:48
【问题描述】:

我正在尝试使用 kable 生成一个表并将输出保存为降价。我后来使用 pandoc 将 markdown 转换为 pdf。对于我的表,我想将我的表列分为两组。似乎这可以使用 kableExtra "add_header_above" 函数来实现,但不幸的是,输出不能存储为降价。有没有办法使用降价对列进行分组?我在下面粘贴我的虚拟代码。感谢所有 cmets 和建议。

library(knitr)
library(kableExtra)
test <- head(mtcars, head=10)
test <- test[,c(1:6)]
kable(test, "markdown")

我已经尝试像下面这样对列进行分组,但它似乎不起作用。

       |                  |     GroupA     |      GroupB     |
       |:-----------------|:---------------|:----------------|
       |                  |  mpg| cyl| disp|  hp| drat|    wt|
       |:-----------------|----:|---:|----:|---:|----:|-----:|
       |Mazda RX4         | 21.0|   6|  160| 110| 3.90| 2.620|
       |Mazda RX4 Wag     | 21.0|   6|  160| 110| 3.90| 2.875|
       |Datsun 710        | 22.8|   4|  108|  93| 3.85| 2.320|
       |Hornet 4 Drive    | 21.4|   6|  258| 110| 3.08| 3.215|
       |Hornet Sportabout | 18.7|   8|  360| 175| 3.15| 3.440|
       |Valiant           | 18.1|   6|  225| 105| 2.76| 3.460|

【问题讨论】:

    标签: markdown knitr pandoc kable kableextra


    【解决方案1】:

    为什么要将输出存储在markdown中,然后later using pandoc to convert markdown to pdf.为什么不一步?

    library(knitr)
    library(kableExtra)
    
    test <- head(mtcars, head = 10)
    test <- test[, c(1:6)]
    
    p <- kable(test) %>%
      add_header_above(c(" " = 1, "Group 1" = 3, "Group 2" = 3))
    p
    

    根据您选择的输出,您将在“HTML”或“PDF”输出中获得一个带有分组标题的表格。

    您可以使用p 存储“HTML”输出并使用pandoc 二进制文件将其转换为markdown。但是二进制

    pandoc 本身对 R 一无所知。因此,除了从它创建的输出中获取代码的形而上学困难之外,您还有工具不匹配。

    (引用自Dirk Edelbuettel

    如果您使用直接转换为 PDF,则不需要p

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-18
      • 2018-11-09
      • 2020-07-13
      相关资源
      最近更新 更多