この奇妙な動作がkable
に気づきました。Rチャンクを実行した後にknitr :: kableがきれいに印刷されない
> knitr::kable(head(iris, 3))
| Sepal.Length| Sepal.Width| Petal.Length| Petal.Width|Species |
|------------:|-----------:|------------:|-----------:|:-------|
| 5.1| 3.5| 1.4| 0.2|setosa |
| 4.9| 3.0| 1.4| 0.2|setosa |
| 4.7| 3.2| 1.3| 0.2|setosa |
ここで、ファイル>新規ファイル> Rノートブックを実行します。デモノートが作成され、1つのチャンクにはplot(cars)
が含まれています。ノートブック内でそのチャンクを実行してください。
> plot(cars)
次に、テーブルを再度印刷してください。今回は出力が異なって見えます。どうして?
> knitr::kable(head(iris, 3))
[1] "| Sepal.Length| Sepal.Width| Petal.Length| Petal.Width|Species |"
[2] "|------------:|-----------:|------------:|-----------:|:-------|"
[3] "| 5.1| 3.5| 1.4| 0.2|setosa |"
[4] "| 4.9| 3.0| 1.4| 0.2|setosa |"
[5] "| 4.7| 3.2| 1.3| 0.2|setosa |"
attr(,"format")
[1] "markdown"
attr(,"class")
[1] "knit_asis"
attr(,"knit_cacheable")
[1] NA
> packageVersion("knitr")
[1] ‘1.17’
> sessionInfo()
R version 3.3.3 (2017-03-06)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X El Capitan 10.11.6
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
loaded via a namespace (and not attached):
[1] tools_3.3.3 highr_0.6 knitr_1.17
> RStudio.Version()
$citation
To cite RStudio in publications use:
RStudio Team (2016). RStudio: Integrated Development for R. RStudio,
Inc., Boston, MA URL http://www.rstudio.com/.
A BibTeX entry for LaTeX users is
@Manual{,
title = {RStudio: Integrated Development Environment for R},
author = {{RStudio Team}},
organization = {RStudio, Inc.},
address = {Boston, MA},
year = {2016},
url = {http://www.rstudio.com/},
}
$mode
[1] "desktop"
$version
[1] ‘1.0.153’
ありがとうございます! knitr ::: print.knitr_kableは合理的な解決策です。私が気にする理由について:kableは、データフレームをきれいに印刷するのに非常に便利です。典型的な使用例:Slackで同僚と結果を共有する。また、チャンクを実行すると状態がこのように変わる可能性があることに少し不満を抱いています。 – Shantanu
もう少し見てきましたが、これはRStudioコードのバグのようです。それを修正するためにプルリクエストを提出します。 – user2554330
それを見ていただきありがとうございます!私は先に進み、この答えを受け入れます。 – Shantanu