Rnotebook 不显示数据帧的代码输出

Rnotebook not showing code output for data frames

当我尝试查看数据帧结果时,我在 Rnotebook 中的代码块输出没有出现(好像不是 运行)。我必须通过 pander() 函数传递它才能看到输出打印出来。这与 knitr 有关吗?我提到这个是因为我在开始时将选项设置为以下内容:

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

我试过直接在块中设置选项,但得到了同样不想要的结果。是否有我没有正确配置的设置?我还必须提到,这是一种在某种程度上不一致的行为。也就是说,我可能会停止处理它,一段时间后代码输出会以某种方式出现。

这是我正在尝试 运行 复制粘贴到 Rnotebook 中的工作代码示例。

设置笔记本工作区选项

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

加载相应的库和包

```{r}
library(easypackages)
libraries("dplyr",
          "ggplot2",
          "caret",
          "tidyverse",
          "tidytext",
          "ROCR",
          "pander",
          "knitr",
          "broom")
```

下面是一些示例数据:

```{r}
library(readr)
attibm <- read_csv("https://raw.githubusercontent.com/vincentarelbundock/Rdatasets/master/csv/datasets/mtcars.csv", 
    col_types = cols(Attrition = col_character()))
```

看结构。 (此输出按预期显示)

```{r}
glimpse(attibm)
```

预览前十行(这是没有显示的输出。没有任何反应)

```{r}
head(attibm)
```

此输出也不显示。 (没有任何反应)

```{r}
attibm %>% 
  summarise_if(is.integer, mean)
```

当我传递 pander 函数时,THEN 就会显示出来。

```{r}
attibm %>% 
  summarise_if(is.integer, mean) %>% 
  pander()
```

这个也显示了

```{r}
pander(head(attibm))
```

我已经检查了发布的问题:,但我无法看出与此案例的联系。

我希望这足够清楚,并且您可以重现此处显示的代码。对此问题的任何帮助将不胜感激。

最新版本的 markdown 不再兼容 pandocv2。 您可以使用

检查您的 pandoc 版本
library(rmarkdown); pandoc_version()

如果是pandoc版本你需要markdown的开发版,你可以在那里下载

library(devtools); install_github("rstudio/rmarkdown")

为了确定这是否是最新版本的 pandoc 的问题,请尝试通过添加

检查生成的 .md 是否正确
 ---
 output:  
  html_notebook 
    keep_md: true
 ---

我有一个类似的问题,data.frame 和 DT:data。table 不会显示任何输出。
post 帮助了我。 我发现问题的原因是我错误地输入了包含非 ASCII 字符的 .rmd 文件名!我一删除它,问题就解决了。 希望这对其他人也有帮助