在 knitr 中,for 循环中没有来自 pander 的输出
In knitr, no output from pander in for loop
在 RStudio 中使用 knitr,pander 在 for 循环中不会产生任何(或正确的)html 输出。这是一个最小的情况,作为 Rmd 输入文件。
---
title: "Untitled"
output: html_document
---
Testing why pander doesn't work in for loop
```{r global_options, include=FALSE}
knitr::opts_chunk$set(fig.width=7, fig.height=5, echo=FALSE, warning=FALSE,
message=FALSE)
```
```{r}
library(pander)
r <- 1:10
print("pander at top level")
pander(summary(r)) # works
print("pander in for loop")
for (i in 1:2) pander(summary(r)) #does not work (nothing in output)
for (i in 1:2) print(pander(summary(r))) #does not work (code in output)
for (i in 1:2) print(summary(r)) # works
```
其他(更有趣的)"summary" 对象的结果相同,例如lm 拟合的总结。对于来自 CRAN 的 pander 0.5.2 以及从 github.
加载的 0.5.3 也观察到了相同的行为
RStudio v 0.99.467.
> sessionInfo()
R version 3.2.0 (2015-04-16)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.10.4 (Yosemite)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] pander_0.5.3
loaded via a namespace (and not attached):
[1] minqa_1.2.4 MASS_7.3-40 Matrix_1.2-0 htmltools_0.2.6 tools_3.2.0
[6] yaml_2.1.13 Rcpp_0.11.6 rmarkdown_0.7 splines_3.2.0 nlme_3.1-120
[11] grid_3.2.0 digest_0.6.8 nloptr_1.0.4 lme4_1.1-7 lattice_0.20-31
@daroczig 在评论中回答:
- 在全局级别
knitr::opts_chunk$set(results="asis")
或块级别 ```{r,results="asis"}
将 knitr 块选项 results
更改为 asis
- 禁用
panderOption
knitr.auto.asis
: panderOptions('knitr.auto.asis', FALSE)
比照。
this issue
---
title: "Untitled"
output: html_document
---
Testing **when** pander doesn't work in for loop
```{r global_options, include=FALSE}
knitr::opts_chunk$set(fig.width=7, fig.height=5, echo=TRUE, warning=FALSE,
message=FALSE)
```
```{r,results="asis"}
library(pander)
panderOptions('knitr.auto.asis', FALSE)
r <- 1:10
for (i in 1:2) pander(summary(r))
```
在 RStudio 中使用 knitr,pander 在 for 循环中不会产生任何(或正确的)html 输出。这是一个最小的情况,作为 Rmd 输入文件。
---
title: "Untitled"
output: html_document
---
Testing why pander doesn't work in for loop
```{r global_options, include=FALSE}
knitr::opts_chunk$set(fig.width=7, fig.height=5, echo=FALSE, warning=FALSE,
message=FALSE)
```
```{r}
library(pander)
r <- 1:10
print("pander at top level")
pander(summary(r)) # works
print("pander in for loop")
for (i in 1:2) pander(summary(r)) #does not work (nothing in output)
for (i in 1:2) print(pander(summary(r))) #does not work (code in output)
for (i in 1:2) print(summary(r)) # works
```
其他(更有趣的)"summary" 对象的结果相同,例如lm 拟合的总结。对于来自 CRAN 的 pander 0.5.2 以及从 github.
加载的 0.5.3 也观察到了相同的行为RStudio v 0.99.467.
> sessionInfo()
R version 3.2.0 (2015-04-16)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.10.4 (Yosemite)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] pander_0.5.3
loaded via a namespace (and not attached):
[1] minqa_1.2.4 MASS_7.3-40 Matrix_1.2-0 htmltools_0.2.6 tools_3.2.0
[6] yaml_2.1.13 Rcpp_0.11.6 rmarkdown_0.7 splines_3.2.0 nlme_3.1-120
[11] grid_3.2.0 digest_0.6.8 nloptr_1.0.4 lme4_1.1-7 lattice_0.20-31
@daroczig 在评论中回答:
- 在全局级别
knitr::opts_chunk$set(results="asis")
或块级别```{r,results="asis"}
将 knitr 块选项 - 禁用
panderOption
knitr.auto.asis
:panderOptions('knitr.auto.asis', FALSE)
results
更改为 asis
比照。 this issue
---
title: "Untitled"
output: html_document
---
Testing **when** pander doesn't work in for loop
```{r global_options, include=FALSE}
knitr::opts_chunk$set(fig.width=7, fig.height=5, echo=TRUE, warning=FALSE,
message=FALSE)
```
```{r,results="asis"}
library(pander)
panderOptions('knitr.auto.asis', FALSE)
r <- 1:10
for (i in 1:2) pander(summary(r))
```