Learn R Programming

⚠️There's a newer version (2.28) of this package.Take me there.

rmarkdown

The rmarkdown package helps you create dynamic analysis documents that combine code, rendered output (such as figures), and prose. You bring your data, code, and ideas, and R Markdown renders your content into a polished document that can be used to:

  • Do data science interactively within the RStudio IDE,

  • Reproduce your analyses,

  • Collaborate and share code with others, and

  • Communicate your results with others.

R Markdown documents can be rendered to many output formats including HTML documents, PDFs, Word files, slideshows, and more, allowing you to focus on the content while R Markdown takes care of your presentation.

Books

See more about them in Get Started.

Installation

The easiest way to install the rmarkdown package is from within the RStudio IDE, but you don't need to explicitly install it or load it, as RStudio automatically does both when needed. A recent version of Pandoc (>= 1.12.3) is also required; RStudio also automatically includes this too so you do not need to download Pandoc if you plan to use rmarkdown from the RStudio IDE.

If you want to use the rmarkdown package outside of RStudio, you can install the package from CRAN as follows:

install.packages("rmarkdown")

If you want to use the development version of the rmarkdown package (either with or without RStudio), you can install the package from GitHub via the remotes package:

remotes::install_github('rstudio/rmarkdown')

If not using the RStudio IDE, you'll need to install a recent version of Pandoc (>= 1.12.3); see the Pandoc installation instructions for help.

Usage

The easiest way to make a new R Markdown document is from within RStudio. Go to File > New File > R Markdown. From the new file wizard, you may:

  • Provide a document title (optional but recommended),
  • Provide an author name (optional but recommended),
  • Select a default output format- HTML is the recommended format for authoring, and you can switch the output format anytime (required),
  • Click OK (required).

Once inside your new .Rmd file, you should see some boilerplate text that includes code chunks. Use the "Knit" button in the RStudio IDE to render the file and preview the output with a single click or use the keyboard shortcut Cmd/Ctrl + Shift + K.

You can also delete all the text below the YAML frontmatter and fill in your own .Rmd by:

  • Adding code chunks (keyboard shortcut: Ctrl + Alt + I; OS X: Cmd + Option + I),
  • Writing prose with Markdown formatting, and
  • Running each code chunk interactively by clicking the icon within RStudio.

You can also click "Knit to HTML" again to render the full document with all code chunks. For more help getting started in R Markdown, please see the R Markdown website or use the "Get Started" links at the top of this page.

Getting help

There are two main places to get help:

  1. The RStudio community is a friendly place to ask any questions about rmarkdown and the R Markdown family of packages.

  2. Stack Overflow is a great source of answers to common rmarkdown questions. It is also a great place to get help, once you have created a reproducible example that illustrates your problem.

Code of Conduct

Please note that the rmarkdown project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Copy Link

Version

Install

install.packages('rmarkdown')

Monthly Downloads

1,102,580

Version

2.19

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Last Published

December 15th, 2022

Functions in rmarkdown (2.19)

html_fragment

Convert to an HTML fragment.
includes

Include content within output
html_document

Convert to an HTML document
github_document

Convert to GitHub Flavored Markdown
html_notebook_metadata

Generate R Notebook Metadata
html_vignette

Convert to an HTML vignette
html_notebook

Convert to an HTML notebook
html_notebook_output

Generate R Notebook Output
html_document_base

Base output format for HTML-based output formats
html-dependencies

Provide common HTML dependencies for R Markdown formats
ioslides_presentation

Convert to an ioslides Presentation
knitr_options

Knitr options for an output format
knit_params_ask

Run a shiny application asking for parameter configuration for the given document.
latex-dependencies

Provide common LaTeX dependencies
knitr_options_pdf

Knitr options for a PDF output format
metadata

The YAML metadata of the current R Markdown document
latex_dependency

Define a LaTeX package dependency
navbar_html

Create a navbar HTML file from a navbar definition
knitr_options_html

Knitr options for an HTML output format
md_document

Convert to a markdown document
output_metadata

The output metadata object
odt_document

Convert to an OpenDocument Text (ODT) document
pandoc_args

Functions for generating pandoc command line arguments
output_format

Define an R Markdown output format
pandoc_citeproc_convert

Convert a bibliograpy file
paged_table

Create a table in HTML with support for paging rows and columns
pandoc_exec

Get the path of the pandoc executable
pandoc_convert

Convert a document with pandoc
pandoc_options

Pandoc options for an output format
pandoc_available

Check pandoc availability and version
pkg_file_lua

Get the full paths of Lua filters in an R package
powerpoint_presentation

Convert to a PowerPoint presentation
parse_html_notebook

Parse an HTML Notebook
pandoc_template

Render a pandoc template.
relative_to

Relative path utility function
publish_site

Publish an R Markdown Website
pdf_document

Convert to a PDF/LaTeX document
render

Render R Markdown
pandoc_self_contained_html

Create a self-contained HTML document using pandoc.
pandoc_path_arg

Transform path for passing to pandoc
shiny_prerendered_chunk

Add code to a shiny_prerendered context
rtf_document

Convert to an RTF document
rmarkdown_format

R Markdown input format definition
rmarkdown-package

R Markdown Document Conversion
render_supporting_files

Render supporting files for an input document
resolve_output_format

Resolve the output format for an R Markdown document
render_delayed

Delay Rendering for an Expression
render_site

Render multiple documents as a website
yaml_front_matter

Parse the YAML front matter from a file
site_resources

Determine website resource files for a directory
slidy_presentation

Convert to a slidy presentation
word_document

Convert to an MS Word document
shiny_prerendered_clean

Clean prerendered content for the specified Rmd input file
shiny_prerendered_server_start_code

Get the server startup code for a shiny_prerendered server instance
rmd_metadata

R Markdown Metadata
run

Run a Shiny document
tufte_handout

Tufte handout format (PDF)
convert_ipynb

Convert a Jupyter/IPython notebook to an R Markdown document
beamer_presentation

Convert to a Beamer presentation
all_output_formats

Determine all output formats for an R Markdown document
draft

Create a new document based on a template
compile_notebook

Compiling R scripts to a notebook
available_templates

List available R Markdown template in a package
default_output_format

Determine the default output format for an R Markdown document
context_document

Convert to a ConTeXt document
find_pandoc

Find the pandoc executable
find_external_resources

Find External Resource References