Make + RMarkdown for minimally replicable scientific computing.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
notebooks
.gitignore
.travis.yml
Dockerfile
LICENSE
Makefile
readme.md

readme.md

make + rmarkdown

travis-ci

by: Austin G. Davis-Richardson harekrishna@gmail.com

Example of using knitR + Make + RMarkdown for minimally replicable scientific computing. Use this as a skeleton for new R projects.

Instructions

  1. Data goes in data/ (I usually use symlinks or git modules and track this in a separate repository).
  2. Rmarkdown files go in notebooks. I've been trying to treat them like a lab notebook and write one per day.
  3. Type make (this renders all Rmarkdown files to HTML).

You should see something like:

$ make
notebooks/1-hello-world.Rmd -> notebooks/1-hello-world.html
echo "library(knitr); knit(\"notebooks/1-hello-world.Rmd\", \"notebooks/1-hello-world.html\")" | R --slave --vanilla --no-save


processing file: notebooks/1-hello-world.Rmd
  |.................................................................| 100%
  ordinary text without R code


output file: notebooks/1-hello-world.html

[1] "notebooks/1-hello-world.html"

Or, using Docker:

$ docker build --tag myrproject

$ docker run myrproject

TODO

  • Add Packrat for dependency management/vendoring.