R Markdown : : CHEAT SHEET
File path to output document Find in document
5
synch publish button to accounts at
rpubs.com,
shinyapps.io
RStudio Connect
Reload document
.rmd Structure
YAML Header
Optional section of render e.g. pandoc options written as key:value pairs YAML.
At start of file Between lines of
Text
Narration formatted with markdown, mixed with:
Code Chunks
Chunks of embedded code. Each chunk:
Begins with r
ends with
R Markdown will run the code and append the results to the doc. It will use the location of the .Rmd file as the working directory
Parameters
Parameterize your documents to reuse with new inputs e.g., data, values, etc.
1. Add parameters Create and set parameters in the header as sub values of params
2. Call parameters Call parameter values in code as paramsname
3. Set parameters Set values wth Knit with parameters or the params argument of render:
renderdoc.Rmd, params listn 1, d as.Date20150101
Interactive Documents
Turn your report into an interactive Shiny document in 4 steps 1. Add runtime: shiny to the YAML header.
2. Call Shiny input functions to embed input objects.
3. Call Shiny render functions to embed reactive output.
4. Render w rmarkdown::run or click Run Document in RStudio IDE
What is R Markdown?
.Rmd files An R Markdown
.Rmd file is a record of your
research. It contains the code that a scientist needs to reproduce your work
Rmd along with the narration that a reader needs to understand your work.
Reproducible Research At the click of a button, or the type of a command, you can rerun the code in an R Markdown file to reproduce your work and export the results as a finished report.
Dynamic Documents You can choose to export the finished report in a variety of formats, including html, pdf, MS Word, or RTF documents; html or pdf based slides, Notebooks, and more.
Workflow
1
2 3
4 5 6 7
1
rmarkdown
3
4
2
go to code chunk
run all previous chunks
publish
show outline
set preview location
insert code chunk
run code chunks
modify chunk options
run current chunk
params:
n: 100
d: !r Sys.Date
Open a new .Rmd file at File New File
R Markdown. Use the wizard that opens to pre populate the file with a template
Write document by editing template
Knit document to create report; use knit button or
render to knit
Preview Output in IDE window
Publish optional to web server
Examine build log in R Markdown console Use output file that is saved along side .Rmd
7
6
Todays date
is r paramsd
render
Use rmarkdown::render to renderknit at cmd line. Important args:
input file to render outputformat
outputoptions List of render options as in YAML
envir environment to evaluate code chunks in
encoding of input file
outputfile outputdir
One or more lines surrounded with r and . Place chunk options within curly braces, after r. Insert with
params list of params to use
Embed code with knitr syntax
INLINE CODE
Insert with r code. Results appear as text without code. Built with r getRversion Built with 3.2.3
IMPORTANT CHUNK OPTIONS
cache cache results for future knits default FALSE
cache.path directory to save cached results in default cache
child files to knit and then include default NULL
collapse collapse all output into single block default FALSE
comment prefix for each line of results default
CODE CHUNKS
GLOBAL OPTIONS
output: htmldocument runtime: shiny
r, echo FALSE numericInputn,
How many cars?, 5
renderTable headcars, inputn
r echoTRUE getRversion
Set with knitr::optschunkset, e.g.
r includeFALSE knitr::optschunksetecho TRUE
dependson chunk dependencies for caching default NULL
echo Display code in output document default TRUE
engine code language used in chunk default R
error Display error messages in doc TRUE or stop render when errors occur FALSE default FALSE
eval Run code in chunk default TRUE
fig.align left, right, or center default default
fig.cap figure caption as character string default NULL
fig.height, fig.width Dimensions of plots in inches
highlight highlight source code default TRUE include Include chunk in doc after running
default TRUE
message display code messages in document default TRUE
results default markup
asis passthrough results
hide do not display results
hold put all results below all code
tidy tidy code for display default FALSE warning display code warnings in document
default TRUE
Embed a complete app into your document with shiny::shinyAppDir
Options not listed above: R.options, aniopts, autodep, background, cache.comments, cache.lazy, cache.rebuild, cache.vars, dev, dev.args, dpi, engine.opts, engine.path, fig.asp, fig.env, fig.ext, fig.keep, fig.lp, fig.path, fig.pos, fig.process, fig.retina, fig.scap, fig.show, fig.showtext, fig.subcap, interval, out.extra, out.height, out.width, prompt, purl, ref.label, render, size, split, tidy.opts
Publish on RStudio Connect, to share R Markdown documents securely, schedule automatic updates, and interact with parameters in real time. www.rstudio.comproductsconnect
RStudio is a trademark of RStudio, Inc. CC BY SA RStudio inforstudio.com 8444481212 rstudio.com Learn more at rmarkdown.rstudio.com rmarkdown 1.6 Updated: 201602
Pandocs Markdown
Write with syntax on the left to create effect on right after render
Plain text
End a line with two spaces to start a new paragraph. italics and bold verbatim code subsuperscript22 strikethrough escaped:
endash: , emdash: equation: A pir2 equation block:
E mc2
block quote
Header1 anchor
Header 2 cssid
Header 3 .cssclass
Header 4
Header 5
Header 6
!Text comment
textbfTex ignored in HTML emHTML ignored in pdfsem
http:www.rstudio.com linkwww.rstudio.com Jump to Header 1anchor image:
!Captionsmallorb.png
unordered list subitem 1 subitem 2
subsubitem 1 item 2
Continued indent 4 spaces
1. ordered list 2. item 2
i subitem 1
A. subsubitem 1
A list whose numbering continues after
an interruption
Term 1
: Definition 1
Right Left Default Center ::::
1212 12 12
123 123 123 123
1 1 1 1
slide bullet 1 slide bullet 2
to have bullets appear on click horizontal ruleslide break:
A footnote 1
1: Here is the footnote.
Set render options with YAML
When you render, R Markdown
1. runstheRcode,embedsresultsandtextinto.mdfilewithknitr 2. thenconvertsthe.mdfileintothefinishedformatwithpandoc
Set a documents
suboption
description
rmarkdown
citationpackage The LaTeX package to process citations, natbib, biblatex or none X X X
codefolding Let readers to toggle the display of R code, none, hide, or show X
colortheme Beamer color theme to use X
css CSS file to use to style document X X X
dev Graphics device to use for figure output e.g. png X X X X X X X
duration Add a countdown timer in minutes to footer of slides X
figcaption Should figures be rendered with captions? X X X X X X X
figheight, figwidth Default figure height and width in inches for document X X X X X X X X X X
highlight Syntax highlighting: tango, pygments, kate,zenburn, textmate X X X X X
includes File of content to place in document inheader, beforebody, afterbody X X X X X X X X
incremental Should bullets appear one at a time on presenter mouse clicks? X X X
keepmd Save a copy of .md file that contains knitr output X X X X X X
keeptex Save a copy of .tex file that contains knitr output X X
latexengine Engine to render latex, pdflatex, xelatex, or lualatex X X
libdir Directory of dependency files to use Bootstrap, MathJax, etc. X X X
mathjax Set to local or a URL to use a localURL version of MathJax to render equations X X X
mdextensions Markdown extensions to add to default definition or R Markdown X X X X X X X X X X
numbersections Add section numbering to headers X X
pandocargs Additional arguments to pass to Pandoc X X X X X X X X X X
preserveyaml Preserve YAML front matter in final document? X
referencedocx docx file whose styles should be copied when producing docx output X
selfcontained Embed dependencies into the doc X X X
slidelevel The lowest heading level that defines individual slides X
smaller Use the smaller font size in the presentation? X
smart Convert straight quotes to curly, dashes to emdashes, … to ellipses, etc. X X X
template Pandoc template to use when rendering file quarterlyreport.html. X X X X X
theme Bootswatch or Beamer theme to use for page X X
toc Add a table of contents at start of document X X X X X X X
tocdepth The lowest level of headings to add to table of contents X X X X X X
tocfloat Float the table of contents to the left of the main content X
default output format in the YAML header:
output value
htmldocument pdfdocument worddocument odtdocument rtfdocument mddocument githubdocument ioslidespresentation slidypresentation beamerpresentation
Customize output with suboptions listed to the right:
html tabsets
Use tablet css class to place
creates
html
pdf requires Tex
Microsoft Word .docx OpenDocument Text
Rich Text Format
Markdown
Github compatible markdown ioslides HTML slides
slidy HTML slides
Beamer pdf slides requires Tex
Tabset .tabset .tabsetfade .tabsetpills Tab 1
text 1
Tab 2
text 2
End tabset
output: htmldocument
Body
Indent 2
subheaders into tabs
Indent 4
Create a Reusable Template
1. Create a new package with a instrmarkdowntemplates directory
2. In the directory, Place a folder that contains: template.yaml see below
skeleton.Rmd contents of the template
any supporting files
3. Install the package
4. Access template in wizard at File New File R Markdown template.yaml
Table Suggestions
Several functions format R data into tables
data faithful1:4,
r results asis
knitr::kabledata, caption Table with kable
r results asis
printxtable::xtabledata, caption Table with xtable,
type html, html.table.attributes border0
r results asis
stargazer::stargazerdata, type html, title Table
Citations and Bibliographies
Create citations with .bib, .bibtex, .copac, .enl, .json, .medline, .mods, .ris, .wos, and .xml files
spaces spaces
output: htmldocument:
codefolding: hide
tocfloat: TRUE
Body
Tabset
Tab 1 Tab 2
text 1
End tabset
name: My Template
with stargazer
RStudio is a trademark of RStudio, Inc. CC BY SA RStudio inforstudio.com 8444481212 rstudio.com Learn more at rmarkdown.rstudio.com rmarkdown 1.6 Updated: 201602
1. Set bibliography file and CSL 1.0 Style file optional in the YAML header
2. Use citation keys in text
bibliography: refs.bib csl: style.csl
Smith cited smith04.
Smith cited without author smith04. smith04 cited in line.
3. Render. Bibliography will be added to end of document
Learn more in the stargazer, xtable, and knitr packages.
html pdf word odt
rtf
md gituhb ioslides slidy beamer