文書作成をプログラミングできるフレームワーク
レポート・プレゼン・書籍なども作れるが、
今回は分析ノート作りにフォーカス
ソース (qmd, ipynb, …)
出力 (HTML, Docx, PDF, …)
Rスクリプトは関数の実装などに使った方がいい
この辺のことはRが生産性を高めるに書いた
📁 docs
└── mtcars.docx # output を反映したレポート……のつもりだったもの
📁 output
├── mtcars-summary.csv
├── mtcars-wt-vs-mpg.png # 中身は凡例を読みやすくする前のバージョンのまま
└── summary.csv # mtcars-summary.csv に改名して不要になったゴミ
📁 R
└── mtcars.R # 肥大化して mtcars.docx を見ないと
コードごとの分析目的や知見がわからない……
どころか mtcars.docx が腐ってて何もわからない
ソース (qmd)
出力 (HTML)
ドキュメント冒頭の---
で区切られたメタデータ
分析ノートとしては↓を覚えておけばOK
💡 embed-resources: true
を使うと、画像などがHTMLファイルに埋め込まれるため人と共有しやすい
ドキュメント中の```{r}
と```
で囲われた領域
図のサイズなどを調整するオプション。
チャンク冒頭の#|
で始まるコメント内にYAMLで記述。
fig-width
とfig-height
は覚えておきたい。
オプション一覧: https://yihui.org/knitr/options/
歴史的経緯によりオプション名はfig.width
などのドット区切りになっているが、Quartoではfig-width
のようなハイフン区切りを推奨。
Markdown記法を用いて分析の目的や考察などを記述。
でexample.htmlが生成される
覚えること多すぎ……💢
更にQuartoのセットアップ方法も覚えるの……?
と思った人もRStudioで始めてみよう
便利機能もいっぱい
Visualエディタで記法の暗記とサヨナラ
補完が便利(コード・チャンクオプション・YAMLフロントマター)
コマンドパレットも便利(Ctrl+Shift+P)
ggplotly()
だけ覚えておけばOK
https://plotly.com/ggplot2/
試料採取地点の確認などに
https://rstudio.github.io/leaflet/
いつでも生データは大事
そこそこ凝ったこともできる
https://glin.github.io/reactable/
パッケージのバージョンに由来する再現しない!を防ぐ
Rが生産性を高めるの第7章でも紹介
複雑なプロジェクトでは相対パスの指定が大変
rprojrootを使えば、相対パスの基準を「プロジェクトのルートディレクトリ」に固定できる
分析ノート限定でさえ湧きあがる欲望
#| code-fold: true
#| echo: false
基本はチャンクオプションで#| cache: true
するだけ
チャンクの内容が同一ならキャッシュした結果を使える
チャンクラベルをつけておくことを強く推奨
期待通りにキャッシュが更新されなかった場合の事故に注意
Gitを使おう
RStudioではじめるGitによるバージョン管理 by uri氏
HTMLファイルはGitHubでは見れない
MarkdownファイルはGitHubでも見れるので、
出力形式にgfm
を追加しておくといい
webshot2をインストールしておくと、
HTMLウィジェットのスクショもgfmに埋め込める
分析ノート作りにqmd -> HTMLが便利
QuartoではWordやPDFへの出力、ウェブサイト作りなどもできるぞ
関数定義はRスクリプトに分離した方がいいことも多い
source()
で複数のqmdファイルから使い回せる