数据科学千篇一律:如何保留原始文件的多个版本

Data Science Cookie Cutter: How to keep multiple versions of raw files

使用数据科学cookiecutter,如何保留原始文件的多个版本?

更准确地说,如果我有两个文件

data/raw/scrape_2017_06.json
data/raw/scrape_2017_04.json

如何确保make始终使用最新版本?

只要您可以中继文件名并在 raw/data 中按名称按词法顺序对这些文件进行排序等同于按年龄对它们进行排序,以下解决方案就足够了:

DATAFILE:=$(lastword $(sort $(wildcard data/raw/*.json)))

all:
    @echo The latest datafile is $(DATAFILE)

如果没有,则需要依赖操作系统命令。对于 Unix 系统,许多实现(当然,GNU 实现)支持 -t 按修改时间排序。所以它会是:

DATAFILE:=$(firstword $(shell ls -t data/raw/*.json))