| rmake-package {rmake} | R Documentation |
Makefile generator for R analytical projects
Description
rmake creates and maintains a build process for complex analytic tasks in R. Package allows to easily generate Makefile for the (GNU) 'make' tool, which drives the build process by (in parallel) executing build commands in order to update results accordingly to given dependencies on changed data or updated source files.
Details
Note: The package requires the R_HOME environment variable to be properly set.
Basic Usage
Suppose you have a file dataset.csv. You want to pre-process it and store the results into
dataset.rds within the preprocess.R R script. After that, dataset.rds is then
an input file for report.Rmd and details.Rmd, which are R-Markdown scripts that generate
report.pdf and details.pdf. The whole project can be initialized with rmake as follows:
Let us assume that you have rmake package as well as the
maketool properly installed.Create a new directory (or an R studio project) and copy your
dataset.csvinto it.Load rmake package and create skeleton files for it:
library(rmake)
rmakeSkeleton('.')
Makefile.RandMakefilewill be created in current directory ('.').Create your file
preprocess.R,report.Rmdanddetails.Rmd.Edit
Makefile.Ras follows:
library(rmake)
job <- list(
rRule('dataset.rds', 'preprocess.R', 'dataset.csv'),
markdownRule('report.pdf', 'report.Rmd', 'dataset.rds'),
markdownRule('details.pdf', 'details.Rmd', 'dataset.rds')
)
makefile(job, "Makefile")
This will create three build rules: processing ofpreprocess.Rand execution ofreport.Rmdanddetails.Rmdin order to generate resulting PDF files.Run
makeor build your project in R Studio (Build/Build all). This will automatically re-generateMakefileand executepreprocess.Rand the generation ofreport.Rmdanddetails.Rmdaccordingly to the changes made to source files.