Help us understand the problem. What is going on with this article?

R markdownチートシート

More than 1 year has passed since last update.

前置き

環境

  • R3.3.2
  • Rstudio Server1.0.136(64bit)

実行方法のショートカット

  • 実行方法は主に以下2種類
実行方法 ショートカット
Select Line Ctrl + Enter
Current Chunk Ctrl + Shift + Enter

YAML headers

  • RmarkdownではドキュメントをYAML形式で設定することができる
  • 新規でR Notebookを開くと初期設定でドキュメント上部に以下のように記載されている
  • PreviewにてHTML出力すると、ドキュメント上部にタイトルが表示される
  • 注意点として、セミコロンの後に半角スペースを空けないとエラーとなる
---
title: "R Notebook"
output: html_notebook
---
  • その他以下のような設定ができる
設定方法 説明
title: "title" タイトル
author: "name" 著者
date: "yyyy-mm-dd" 日付
インラインコードを使うと便利
date: "r format(Sys.time(), '%Y/%m/%d')``"
output: html_document html file
output: pdf_document pdf
output: word_document word
output: ioslides_document ioslides slideshow
output: slidy_presentation slidy HTML slides
output: beamer_presentation Beamer pdf slides (requires Tex)
output: html_notebook html_documentが改良されたようなもの
詳しくは本家にて
output: flexdashboard htmlwidgetsをベースとしたダッシュボードを作成できる
params: ドキュメント内でレンダリング可能なパラメータを設定できる

paramsの使い方

  • YAML headers
---
params: 
  client: "filename.csv"
---
  • Rコードの呼び出し方
df <- read.csv(params$client)

****_document利用時に利用可能なもの

  • 利用方法例
---
output:
    html_document:
        toc:true
        toc_depth:3
---
設定方法 説明
toc:[true/false] 目次を作成するかどうか
toc_depth:[1~] 目次の深さ
toc_float:[true/false] 目次を浮かせる
number_sections:[true/false] セクション番号
theme: いろいろなテーマがある。
"default", "cerulean", "journal", "flatly", "readable", "spacelab", "united", "cosmo", "lumen", "paper", "sandstone", "simplex", "yeti"
highlight: 強調表示スタイル
"default", "tango", "pygments", "kate", "monochrome", "espresso", "zenburn", "haddock", "textmate"
code_folding: [hide/show] コードの折り畳みの初期設定

toc_float利用時に利用可能なもの

  • 利用方法例
---
output:
    html_document:
        toc: true
        toc_float:
            collapsed: true
---
設定方法 説明
collapsed:[true/false] 必要に応じて目次が自動的にインライン展開する
smooth_scroll:[true/false] 目次をクリックしたときの移動スピードがスムーズか、一瞬か

その他

  • 公式にCSSなど詳細に記載されている

Embed Code

レポートにRコードを埋め込む方法が2種類ある

  • inline code
    • ドキュメントにコードを埋め込む方法
# 例:今日の日付
今日の日付は`r format(Sys.time(), '%Y/%m/%d') ` 日です。

code chunks

  • ドキュメント内の一定の範囲でコード埋め込む
  • code chnks にはいろいろなオプションを指定できる
    ```{r}
    dim(iris)
    ```

Chunk Option

  • 以下のようなオプションがある
  • オプションの指定方法は大きく2種類

    • hunk内で適応される方法
    {r eval=FALSE, error=FALSE}
    
    • ドキュメントのグローバルの設定とする方法
    opts_chunk$set(eval=FALSE, error=FALSE)
    
option default effect
eval TRUE コードを評価してその結果を含めるかどうか
echo TRUE 結果とともにコードを表示するかどうか
warning TRUE 警告を表示するかどうか
error FALSE エラーを表示するかどうか
message TRUE メッセージを表示するかどうか
tidy FALSE コードを表示するときに整形式でコードを再フォーマットするかどうか
results "markup" "markup"、 "asis"、 "hold"、または "hide"
cache FALSE 将来のレンダリングの結果をキャッシュするかどうか
comment "##" 結果を始めるコメント文字
fig.width 7 チャンクで作成されたプロットの幅(インチ)
fig.height 7 チャンクで作成されたプロットの高さ(インチ)
prompt FALSE ターミナル文字「$」や「>」を実行結果に表示するかどうか
include TRUE 実行結果をHTMLなどに出力するかどうか
highlight TRUE コードをシンタックスハイライトにするかどうか

言語の種類

- 現在以下言語に対応している
    - R
    - Bash
    - Python
    - Rcpp
    - SQL
    - Stan

参考

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away