【发布时间】:2018-07-31 09:44:00
【问题描述】:
Make 可以方便地使依赖项的研究和数据分析更可重复,例如:
# make file
R = R CMD BATCH --no-save --no-restore
datafiles = *.csv
outputfiles = *.{pdf,Rout}
.PHONY: all clean
all: fig_A.pdf fig_B.pdf
clean:
rm -f $(datafiles) $(outputfiles)
rm -rf output
mkdir output
# produce outputs
fig_A.pdf fig_B.pdf: interim_data.csv plot_figs.R
$(R) plot_figs.R
mv plot_figs.Rout ./output
# derive interim data
interim_data.csv: source_data.csv source_to_interim.R
$(R) source_to_interim.R
mv source_to_interim.Rout ./output
# download source data
source_data.csv: download_source.R
$(R) download_source.R
mv download_source.Rout ./output
从源数据重新生成数字,将所有输出保存到./output。但是我们可以让事情变得更紧凑吗?例如,通过
-
避免重复,如:
$(R) script.R mv script.Rout ./output 重组以更通用地关联代码(本示例中为 R 脚本)数据 (csv) 和输出(pdf、Rout)?
更好地处理将输出导出到
./output目录?
【问题讨论】:
标签: r makefile data-analysis reproducible-research