R Markdownで楽々レポートづくり

第6回 レポート形式自由自在 ~R MarkdownからWord,PDF形式への変換~

この記事を読むのに必要な時間:およそ 4 分

PDF形式出力のオプション

Word形式と同じように,YAMLフロントマターではオプションを少しばかり設定できます。有効なオプションはR上で?rmarkdown::pdf_documentとしてヘルプファイルで確認できます。次の例では目次を有効にして,見出しに番号をつけています。

---
title: "R MarkdownでPDF"
author: "@kohske"
documentclass: ltjarticle
output: 
  pdf_document:
    latex_engine: lualatex
    toc: true
    number_sections: true
---

また,ヘッダや本文前後に外部TeXファイルを挿入することもできます。独自のプリアンブルの指定や文書の先頭・末尾のテンプレート化に便利です。in_headerはヘッダに,before_bodyは文書先頭に,after_bodyは文書末尾に差し込まれます(なお同様の設定によりHTMLレポートでも外部HTMLファイルを差し込むことができます⁠⁠。

---
title: "hoge"
output:
  pdf_document:
    includes:
      in_header: header.tex
      before_body: doc_prefix.tex
      after_body: doc_suffix.tex
---

外部TeXファイルを準備するまでもない場合は,YAMLフロントマターのheader-includesに直接プリアンブルを記述できます。

---
title: "hoge"
header-includes:
   - \usepackage{bbm}
output:
    pdf_document
---

PDFレポートの場合,LaTeXを勉強して本気を出せば(見た目が)出版品質のレポートを作成することも可能です。ですが,日々のレポートのなどの場合,そこまで高品質な見た目のレポートが求められることはないでしょう。そこに本気をだすのではなく,解析処理のほうに本気を出すようにしましょう。

まとめ

今回はR MarkdownでWord形式とPDF形式のレポートを作成する方法を紹介しました。PDF形式の場合は,LaTeX環境の導入など,やや難易度が高いかもしれません。冒頭でも書いたように,基本はHTMLレポートを採用するのがよいでしょう。上司やクライアントや先生からWord形式やPDF形式を求められたら,まずは

HTMLいいっすよ〜 (´ー`)y─┛~~

と粘り強く反応しましょう。それでもどうしてもダメなら,今回の記事を参考にWord形式やPDF形式のレポートを作成してみてください。

5月に始まったこの連載も,もう第6回です。毎回,最後に一言何か書こうと思っているのですが,そろそろネタが尽きてきました。残すところあと2回くらいの予定ですので,どうぞ最後までお付き合い頂ければ幸いです。

また,今回も入稿したオリジナルの原稿である,自動変換処理などを行う前のR Markdownファイルやサンプルなどをまとめて公開しておきます。

次回は

R Markdownではプレゼンに使うようなスライドも作成できます。次回はR MarkdownでWebスライドを作成する方法を紹介します。.Rmdから作成したスライドをWebブラウザ上でサクッとプレゼンすれば,好感度150%アップ間違いなしです。

著者プロフィール

高橋康介(たかはしこうすけ)

東京大学先端科学技術研究センター特任助教。専門は認知科学,認知心理学,認知神経科学。どうやったら人が幸せな気持ちになれるのか研究中。著書に「R言語上級ハンドブック」(分担執筆・C&R研究所),「ドキュメント・プレゼンテーション生成」(共立出版)。趣味はラテ・アート。