Nathan Eastwood
remake
|- ProjectName/
|- data/
|- output/
|- run.R
|- README.md
|- ProjectName/
|- data/
| |- raw/
| |- cleaned/
| |- prepared/
|- output/
| |- fig/
| |- results/
|- lib
| |- source.R
| |- explore.R
| |- prepare.R
| |- model.R
| |- evaluate.R
| |- utils.R
|- run.R
|- README.md
remake
remake
is “Make-like build management, reimagined for R”remake
allows you to:
remake
is in active developmentremake
Componentsremake
Components - The YAML Fileremake
everything that it needs to know.nycflights13
(install.packages("nycflights13")
)
flights
, airports
, airlines
all
target is the final outputremake
uses the DiagrammeR
package to visualize your workflows!diagram()
function from remake
.remake::make()
will produce the following output:> remake::make()
[ LOAD ]
[ READ ] | # loading sources
< MAKE > all
[ BUILD ] transformedData | transformedData <- mapNames()
[ READ ] | # loading packages
Joining, by = "carrier"
[ BUILD ] numFlights | numFlights <- numFlightsFromAirport(transformedData)
[ BUILD ] depDelay | depDelay <- meanDepartureDelayByCarrier(transformed...
[ PLOT ] figures/num_flights_per_airport.png | plotNumFlights(numFlights) # ==> figures/num_flights_per_airport...
[ PLOT ] figures/mean_departure_delay_per_carrier.png | plotDepDelay(depDelay) # ==> figures/mean_departure_delay_per_ca...
[ BUILD ] report.html | render("report.Rmd")
...
[ ----- ] all
> remake::make()
< MAKE > all
[ OK ] transformedData
[ OK ] numFlights
[ OK ] depDelay
[ OK ] figures/num_flights_per_airport.png
[ OK ] figures/mean_departure_delay_per_carrier.png
[ OK ] report.html
[ ----- ] all
packrat
testthat
Roxygen2
covr
)make
Flowr
Ruigi
remake
(or similar) can handle these issues for you