16.9 bookdown で本や長いレポートを書く
bookdown パッケージ (Xie 2021b) は複数の R Markdown 文書で構成される長い文書を作成できるように設計されています. 例えば本を執筆したいなら, 章ごとに別々の Rmd ファイルに書き, bookdown を使ってこれらのファイルを本にコンパイルできます.
RStudio ユーザーにとって最も簡単な始め方は, 図16.5にあるように, IDE 上で File -> New Project -> New Directory -> Book Project using bookdown
を選んで bookdown プロジェクトを作成することです.
RStudio を使っていないか, コンソールから作業するのが好きなら, bookdown:::bookdown_skeleton('本のディレクトリ')
関数を呼べば同じものが作れます.
使用法を実演するために, 同じディレクトリに3つのファイルを含めた最低限の例を用意しました.
directory
|- index.Rmd
|- 01-導入.Rmd |- 02-分析.Rmd
以下に各ファイルの中身とそれぞれの役目を示します.
index.Rmd:
--- title: "最低限の bookdown プロジェクト" site: bookdown::bookdown_site output: bookdown::gitbook --- # はじめに {-} なにか書く
最初のファイルは典型的には index.Rmd
と呼ばれます. YAML フロントマターを与える唯一の Rmd ファイルとなるべきです. また, 特殊な YAML フィールド, site: bookdown::bookdown_site
を含めて, bookdown を使うべきことを rmarkdown に知らせることで, 単一の Rmd ファイルをレンダリングするのではなく, 全ての Rmd ファイルをビルドさせます. bookdown::gitbook
・ bookdown::pdf_book
・ bookdown::word_document2
・ bookdown::epub_book
といったどのような bookdown 出力フォーマットでも使えます.
次の2つの Rmd ファイルは2つの章になります.
01-導入.Rmd:
# 第1章 これは第1章です.
02-分析.Rmd:
# 第2章 これは第2章です.
これらの Rmd ファイルをレンダリングするためには, rmarkdown::render()
の代わりに bookdown::render_book('index.Rmd')
を呼ぶべきです. その内部では, デフォルトで bookdown が全ての Rmd ファイルを1つの Rmd に結合し, コンパイルします. ファイルは名前順に結合されます. 上記の例でファイル名の頭に数字を付けたのはそれが理由です.
bookdown プロジェクトをカスタマイズできる設定は多くあります. bookdown のより包括的な概要として, rmarkdown 本 (Xie, Allaire, and Grolemund 2018) の Chapter 18 を読んでください. 完全なドキュメントは bookdown 本 (Xie 2016) になります.