当我尝试查看数据框结果时,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功能时,它会显示出来。
```{r}
attibm %>%
summarise_if(is.integer, mean) %>%
pander()
```
这个也显示
```{r}
pander(head(attibm))
```
我已查看发布的问题:Output of numbers in R notebook,但我无法看到与此案例的关联。
我希望这很清楚,你可以重现这里显示的代码。任何有关此问题的帮助将受到高度赞赏。
答案 0 :(得分:1)
最新版本的markdown不再与pandocv2兼容。 您可以使用
检查您的pandoc版本library(rmarkdown); pandoc_version()
如果是pandoc版本,您需要可以在那里下载的markdown开发版本
library(devtools); install_github("rstudio/rmarkdown")
要缩小这个问题是否与最新版本的pandoc有关,请尝试通过添加
检查生成的.md是否正确 ---
output:
html_notebook
keep_md: true
---
答案 1 :(得分:1)
我有一个类似的问题,即data.frame和DT:data.table不会显示任何输出。
这个post帮助了我。
我发现问题的原因是我在.rmd文件名中输入错误,包括非ASCII字符!我一删除它,问题就解决了。
希望这对其他人也有帮助