R kable不会在Markdown文档中打印

标签 r r-markdown markdown kable qwraps2

我最近尝试对表使用 kable 包,虽然我对 R 脚本中得到的结果非常满意,但我不知道如何在 R Markdown 文件中使用它们。

下面是一个表格的简短示例,它可以在 R 脚本中运行,但当我尝试在 Markdown 文档中重现它时却无法运行。

data(mtcars)

mtcars

## @knitr install

check_and_install <- function( packname ) { # given package name, check installation, install if not found
  if ( packname %in% rownames(installed.packages()) == FALSE ) {
install.packages( packname, repos="http://cran.rstudio.com/"  )
  }
}

check_and_install("kableExtra")
check_and_install("dplyr")
check_and_install("qwraps2")
check_and_install("reprex")

library(kableExtra)
library(dplyr)
library(qwraps2)
library(reprex)

## Tableau

summary_test  <-
  list("Cylindres" =
     list("Huit" = ~ qwraps2::n_perc0(cyl == 8,show_symbol=TRUE),
          "Six" = ~ qwraps2::n_perc0(cyl == 6,show_symbol=TRUE),
          "Quatre"  = ~ qwraps2::n_perc0(cyl == 4,show_symbol=TRUE)),
   "Vitesses" =
     list("Cinq" = ~ qwraps2::n_perc0(gear == 5,show_symbol=TRUE),
          "Quatre" = ~ qwraps2::n_perc0(gear == 4,show_symbol=TRUE),
          "Trois" = ~ qwraps2::n_perc0(gear == 3,show_symbol=TRUE))
  )



tabtest2<-summary_table(dplyr::group_by(mtcars, am), summary_test)


kable_out <- kable(tabtest2, format = "html", caption = "",     col.names=c("Auto","Manuelle"), booktabs = T, full_width = F) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kableExtra::group_rows("Cylindres", 1, 3) %>%
  kableExtra::group_rows("Vitesses", 4, 6) 

kable_out

现在,对于下一步,我想将此选项卡包含在 R-markdown 文档中,理想情况下输出是一个 word 文件。这就是我遇到问题的地方:我找不到正确包含它的方法。 Markdown 完全搞乱了单词输出的格式。请注意,如果我将输出切换为 HTML,则不会有问题...不幸的是,我现在必须提供 Word 文档,因此这不是一个选项。

---
title: "Test2"
author: "MJ"
date: "14 mars 2019"
output: word_document
always_allow_html: yes
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(cache = FALSE, include = FALSE)
library(knitr)
opts_chunk$set(echo = FALSE, cache=FALSE)
read_chunk('C:/Users/Mathieu/Desktop/indicateurs pps/Test SO.R')
```


```{r install, include=FALSE}
```

## Analyse comparative


```{r table1, include=T}
knitr::kable(tabtest2, format = "html", caption = "",     col.names=c("Auto","Manuelle"), booktabs = T, full_width = F) %>%
  kable_styling(bootstrap_options = c("striped", "hover")) %>%
  kableExtra::group_rows("Cylindres", 1, 3) %>%
  kableExtra::group_rows("Vitesses", 4, 6) 


kable_out
```

创建文档时完全没有问题,一切似乎都运行顺利......

我已经研究了一段时间了,但我无法弄清楚出了什么问题。有领导吗?

提前致谢

最佳答案

在加载 kableExtra 包之前,设置:

options(kableExtra.auto_format = FALSE)

然后,您的表格应该显示在渲染的 Word 文档中。 (建议取自here)

关于R kable不会在Markdown文档中打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54851534/

相关文章:

r - 将 R 输出导出到 Excel

r - R包安装返回错误时让Docker镜像构建失败

R markdown 输出页面宽度

html - 在 html 输出的 Markdown 文本周围 float 图形和标题

R markdown 定义格式化宏

markdown - Jekyll:带有行号的围栏代码块

r - R中箱线图后面的网格

r - 在 R 中进行多重异或比较的优雅解决方案是什么?

r - 国际化 R knitr 图标题标签

markdown - 如何将内联 css 规则应用于 pandoc html 以进行 Markdown 转换?