0% found this document useful (0 votes)
60 views6 pages

R Reference Card For Data Mining

The document introduces R Markdown, which allows embedding R code chunks in Markdown documents. R Markdown uses knitr to execute code and Pandoc to convert Markdown to various formats like PDF and HTML. The rmarkdown package builds on knitr and Pandoc to enable authoring documents, reports, slides, dashboards, books, and websites using R Markdown.

Uploaded by

Yaseen Muhammad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views6 pages

R Reference Card For Data Mining

The document introduces R Markdown, which allows embedding R code chunks in Markdown documents. R Markdown uses knitr to execute code and Pandoc to convert Markdown to various formats like PDF and HTML. The rmarkdown package builds on knitr and Pandoc to enable authoring documents, reports, slides, dashboards, books, and websites using R Markdown.

Uploaded by

Yaseen Muhammad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

1/2/2019 R Markdown: The Definitive Guide

R Markdown: The Definitive Guide


Yihui Xie, J. J. Allaire, Garrett Grolemund

2018-12-20

Preface
Note: This book has been published by Chapman & Hall/CRC. The online
version of this book is free to read here (thanks to Chapman & Hall/CRC),
and licensed under the Creative Commons Attribution-NonCommercial-
ShareAlike 4.0 International License.

https://bookdown.org/yihui/rmarkdown/?fbclid=IwAR2Kcr4Z_aOg2KbuFINDoYqpjAxrqtLX4tSdK2rNqlWA-Mu7iLlxsHXLr4Q 1/6
1/2/2019 R Markdown: The Definitive Guide

The document format “R Markdown” was first introduced in the knitr


package (Xie 2015, 2018c) in early 2012. The idea was to embed code
chunks (of R or other languages) in Markdown documents. In fact, knitr
supported several authoring languages from the beginning in addition to
Markdown, including LaTeX, HTML, AsciiDoc, reStructuredText, and Textile.
Looking back over the five years, it seems to be fair to say that Markdown
has become the most popular document format, which is what we expected.
The simplicity of Markdown clearly stands out among these document
formats.

https://bookdown.org/yihui/rmarkdown/?fbclid=IwAR2Kcr4Z_aOg2KbuFINDoYqpjAxrqtLX4tSdK2rNqlWA-Mu7iLlxsHXLr4Q 2/6
1/2/2019 R Markdown: The Definitive Guide

However, the original version of Markdown invented by John Gruber was


often found overly simple and not suitable to write highly technical
documents. For example, there was no syntax for tables, footnotes, math
expressions, or citations. Fortunately, John MacFarlane created a wonderful
package named Pandoc (http://pandoc.org) to convert Markdown
documents (and many other types of documents) to a large variety of output
formats. More importantly, the Markdown syntax was significantly enriched.
Now we can write more types of elements with Markdown while still
enjoying its simplicity.

In a nutshell, R Markdown stands on the shoulders of knitr and Pandoc.


The former executes the computer code embedded in Markdown, and
converts R Markdown to Markdown. The latter renders Markdown to the
output format you want (such as PDF, HTML, Word, and so on).

The rmarkdown package (J. Allaire, Xie, McPherson, et al. 2018) was first
created in early 2014. During the past four years, it has steadily evolved
into a relatively complete ecosystem for authoring documents, so it is a
good time for us to provide a definitive guide to this ecosystem now. At this
point, there are a large number of tasks that you could do with R Markdown:

Compile a single R Markdown document to a report in different formats,


such as PDF, HTML, or Word.

https://bookdown.org/yihui/rmarkdown/?fbclid=IwAR2Kcr4Z_aOg2KbuFINDoYqpjAxrqtLX4tSdK2rNqlWA-Mu7iLlxsHXLr4Q 3/6
1/2/2019 R Markdown: The Definitive Guide

Create notebooks in which you can directly run code chunks


interactively.

Make slides for presentations (HTML5, LaTeX Beamer, or PowerPoint).

Produce dashboards with flexible, interactive, and attractive layouts.

Build interactive applications based on Shiny.

Write journal articles.

Author books of multiple chapters.

Generate websites and blogs.

There is a fundamental assumption underneath R Markdown that users


should be aware of: we assume it suffices that only a limited number of
features are supported in Markdown. By “features”, we mean the types of
elements you can create with native Markdown. The limitation is a great
feature, not a bug. R Markdown may not be the right format for you if you
find these elements not enough for your writing: paragraphs, (section)
headers, block quotations, code blocks, (numbered and unnumbered) lists,
horizontal rules, tables, inline formatting (emphasis, strikeout, superscripts,
subscripts, verbatim, and small caps text), LaTeX math expressions,
equations, links, images, footnotes, citations, theorems, proofs, and
examples. We believe this list of elements suffice for most technical and
non-technical documents. It may not be impossible to support other types of
elements in R Markdown, but you may start to lose the simplicity of
Markdown if you wish to go that far.

Epictetus once said, “Wealth consists not in having great possessions, but
in having few wants.” The spirit is also reflected in Markdown. If you can
control your preoccupation with pursuing typesetting features, you should
be much more efficient in writing the content and can become a prolific

https://bookdown.org/yihui/rmarkdown/?fbclid=IwAR2Kcr4Z_aOg2KbuFINDoYqpjAxrqtLX4tSdK2rNqlWA-Mu7iLlxsHXLr4Q 4/6
1/2/2019 R Markdown: The Definitive Guide

author. It is entirely possible to succeed with simplicity. Jung Jae-sung was


a legendary badminton player with a remarkably simple playing style: he did
not look like a talented player and was very short compared to other
players, so most of the time you would just see him jump three feet off the
ground and smash like thunder over and over again in the back court until
he beats his opponents.

Please do not underestimate the customizability of R Markdown because of


the simplicity of its syntax. In particular, Pandoc templates can be
surprisingly powerful, as long as you understand the underlying
technologies such as LaTeX and CSS, and are willing to invest time in the
appearance of your output documents (reports, books, presentations,
and/or websites). As one example, you may check out the PDF report of the
2017 Employer Health Benefits Survey. It looks fairly sophisticated, but was
actually produced via bookdown (Xie 2016), which is an R Markdown
extension. A custom LaTeX template and a lot of LaTeX tricks were used to
generate this report. Not surprisingly, this very book that you are reading
right now was also written in R Markdown, and its full source is publicly
available in the GitHub repository https://github.com/rstudio/rmarkdown-
book.

R Markdown documents are often portable in the sense that they can be
compiled to multiple types of output formats. Again, this is mainly due to the
simplified syntax of the authoring language, Markdown. The simpler the
elements in your document are, the more likely that the document can be
converted to different formats. Similarly, if you heavily tailor R Markdown to
a specific output format (e.g., LaTeX), you are likely to lose the portability,
because not all features in one format work in another format.

Last but not least, your computing results will be more likely to be
reproducible if you use R Markdown (or other knitr-based source
documents), compared to the manual cut-and-paste approach. This is
https://bookdown.org/yihui/rmarkdown/?fbclid=IwAR2Kcr4Z_aOg2KbuFINDoYqpjAxrqtLX4tSdK2rNqlWA-Mu7iLlxsHXLr4Q 5/6
1/2/2019 R Markdown: The Definitive Guide

because the results are dynamically generated from computer source code.
If anything goes wrong or needs to be updated, you can simply fix or update
the source code, compile the document again, and the results will
automatically updated. You can enjoy reproducibility and convenience at the
same time.

References

Xie, Yihui. 2015. Dynamic Documents with R and Knitr. 2nd ed. Boca
Raton, Florida: Chapman; Hall/CRC. https://yihui.name/knitr/.

Xie, Yihui. 2018c. Knitr: A General-Purpose Package for Dynamic Report


Generation in R. https://yihui.name/knitr/.

Allaire, JJ, Yihui Xie, Jonathan McPherson, Javier Luraschi, Kevin Ushey,
Aron Atkins, Hadley Wickham, Joe Cheng, Winston Chang, and Richard
Iannone. 2018. Rmarkdown: Dynamic Documents for R. https://CRAN.R-
project.org/package=rmarkdown.

Xie, Yihui. 2016. Bookdown: Authoring Books and Technical Documents


with R Markdown. Boca Raton, Florida: Chapman; Hall/CRC.
https://github.com/rstudio/bookdown.

https://bookdown.org/yihui/rmarkdown/?fbclid=IwAR2Kcr4Z_aOg2KbuFINDoYqpjAxrqtLX4tSdK2rNqlWA-Mu7iLlxsHXLr4Q 6/6

You might also like