knitr rmarkdownドキュメントをコンパイルするときの代替の「印刷」機能として、「パンダー」機能を設定したいと思います。このように(Rで実行するコードの例):
require(pander)
print <- function(...) pander(..., style = "rmarkdown") # makes sure that everyhing that everyprint will pass through pander
summary(cars)
これにより、次のようになります。
> summary(cars)
----------------------------------
speed dist
------ ------------ --------------
**** Min. : 4.0 Min. : 2.00
**** 1st Qu.:12.0 1st Qu.: 26.00
**** Median :15.0 Median : 36.00
**** Mean :15.4 Mean : 42.98
**** 3rd Qu.:19.0 3rd Qu.: 56.00
**** Max. :25.0 Max. :120.00
----------------------------------
このようにして、ドキュメント全体に「パンダー」を手動で書き込む必要がなく、すべてのテーブルを適切にフォーマットできます(ドキュメントに「summary(car)」を20回書き込む必要があると想像してください。「print」を変更すると、節約できます。 pander(summary(car))を書く)。
それは可能ですか?(または私が気付いていないより賢い方法はありますか?)
ありがとう。
更新:.rmdファイルの例:
TEST
====
```{r}
require(pander)
print <- function(...) pander(..., style = "rmarkdown") # makes sure that everyhing that everyprint will pass through pander
summary(cars)
```
```{r, eval=FALSE}
library(knitr)
knit2html("test.rmd") # http://stackoverflow.com/questions/10646665/how-to-convert-r-markdown-to-html-i-e-what-does-knit-html-do-in-rstudio-0-9
# http://quantifyingmemory.blogspot.co.il/2013/02/reproducible-research-with-r-knitr.html
```
出力test.mdは次のとおりです。
TEST
====
```r
require(pander)
print <- function(...) pander(..., style = "rmarkdown") # makes sure that everyhing that everyprint will pass through pander
summary(cars)
```
```
## speed dist
## Min. : 4.0 Min. : 2
## 1st Qu.:12.0 1st Qu.: 26
## Median :15.0 Median : 36
## Mean :15.4 Mean : 43
## 3rd Qu.:19.0 3rd Qu.: 56
## Max. :25.0 Max. :120
```
```r
library(knitr)
knit2html("test.rmd") # http://stackoverflow.com/questions/10646665/how-to-convert-r-markdown-to-html-i-e-what-does-knit-html-do-in-rstudio-0-9
#
# http://quantifyingmemory.blogspot.co.il/2013/02/reproducible-research-with-r-knitr.html
```