【发布时间】:2019-12-30 18:44:03
【问题描述】:
我正在开始一个新的数据科学项目。这将是一个早期实验项目,不是为了生产,而是为了概念验证。
我想确定良好/有用的架构(文件夹结构)指南,以与每个 DS 概念验证项目保持一致。
我通常建立一个新文件夹,每个项目总是有 3 个东西:
- 一些 Jupyter 笔记本
- 输入数据
- 结果数据
假设我的项目有 4 个用于处理数据的 Jupyter 笔记本。通常要运行这些笔记本才能正常工作。每个笔记本都提供一些组合在一起的功能(进入笔记本)。我通常在 Notebook 名称之前给出数字,以使它们按名称顺序排列(见示例)。
每个项目都有一些要分析的数据(输入数据)和一些成为项目结果或部分结果的数据(结果数据)
我可以接受我正在使用的当前结构,但这是我自己想出的,我希望那里有一些更有条理和更具可扩展性的东西,可以用于更大的项目。有点像 Jupyter Notebook 项目的框架???
-**/Folder**
----**/data**
--------input_file_1.csv
--------input_file_2.xlsx
----**/results**
--------partial_results.csv
----1_read_analyse_data.ipynb
----2_clean_data.ipynb
----3_preprocess_data.ipynb
----4_random_forrest_model.ipynb
【问题讨论】:
-
我的一位前同事发现了 cookiecutter 这个非常有用的项目结构。它解决了我上面描述的许多问题。唯一的缺点是我猜它(还没有)那么受欢迎,这意味着它需要 30 分钟来适应这个结构。 drivendata.github.io/cookiecutter-data-science
标签: python architecture jupyter-notebook jupyter data-science