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
make
tool properly installed.Create a new directory (or an R studio project) and copy your
dataset.csv
into it.Load rmake package and create skeleton files for it:
library(rmake)
rmakeSkeleton('.')
Makefile.R
andMakefile
will be created in current directory ('.'
).Create your file
preprocess.R
,report.Rmd
anddetails.Rmd
.Edit
Makefile.R
as 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.R
and execution ofreport.Rmd
anddetails.Rmd
in order to generate resulting PDF files.Run
make
or build your project in R Studio (Build/Build all). This will automatically re-generateMakefile
and executepreprocess.R
and the generation ofreport.Rmd
anddetails.Rmd
accordingly to the changes made to source files.