Given R code on the clipboard, selected in RStudio, as an expression (quoted or not), or in a file …
Get resulting runnable code + output as
so, or as
Result is returned invisibly, placed on the clipboard, and written to a file. Preview an HTML version in RStudio viewer or default browser.
Install from CRAN:
or get a development version from GitHub:
Let’s say you copy this code onto your clipboard:
(y <- 1:4) mean(y)
reprex(), where the default target venue is GitHub:
A nicely rendered HTML preview will display in RStudio’s Viewer (if you’re in RStudio) or your default browser otherwise.
The relevant bit of GitHub-flavored Markdown is ready to be pasted from your clipboard:
``` r (y <- 1:4) #>  1 2 3 4 mean(y) #>  2.5 ```
Here’s what that Markdown would look like rendered in a GitHub issue:
(y <- 1:4) #>  1 2 3 4 mean(y) #>  2.5
Anyone else can copy, paste, and run this immediately.
Instead of reading from the clipboard, you can:
reprex(mean(rnorm(10))) to get code from expression.
reprex(input = "mean(rnorm(10))\n") gets code from character vector (detected via length or terminating newline). Leading prompts are stripped from input source:
reprex(input = "> median(1:3)\n") produces same output as
reprex(input = "median(1:3)\n")
reprex(input = "my_reprex.R") gets code from file
Use one of the RStudio add-ins to use the selected text or current file.
But wait, there’s more!
Set the target venue to Stack Overflow with
reprex(..., venue = "so").
Get a runnable R script, augmented with commented output, with
reprex(..., venue = "R"). This is useful for Slack, email, etc.
By default, figures are uploaded to imgur.com and resulting URL is dropped into an inline image tag.
outfile argument to control where results are left behind. Use
outfile = NA to work in current working directory.