2

我想在我的项目中使用 Cookiecutter 数据科学项目结构。我找到了http://drivendata.github.io/cookiecutter-data-science/ ,它看起来很棒。

我正在分析它们结构上的目录差异,并且我有一些与不同数据阶段相关的问题。在README.md文件设置中,外部数据、临时数据、已处理数据和原始数据之间的差异。

 ├── data
    │   ├── external       <- Data from third party sources.
    │   ├── interim        <- Intermediate data that has been transformed.
    │   ├── processed      <- The final, canonical data sets for modeling.
    │   └── raw            <- The original, immutable data dump.

我正在开展一个项目,其中数据来自传感器并通过 Web 应用程序仪表板进行管理。此外,我一直在 SQL 数据库转储上执行一些 JOINS,以便提取我需要开始使用的其他数据。

原始数据和外部数据有什么区别?我描述了上面提取过程的数据,或者我如何让它们像原始数据一样被分类?

为什么这些不被视为外部数据?

这些将被视为外部数据,我是否从与拥有传感器和 Web 应用程序仪表板数据管理的组织不同的其他来源获取它们?

关于原始数据 他们特别致力于:

永远不要编辑您的原始数据,尤其不要手动编辑,尤其不要在 Excel 中。不要覆盖您的原始数据。不要保存原始数据的多个版本。将数据(及其格式)视为不可变的。您编写的代码应将原始数据通过管道移动到最终分析

我理解这一点,这是一个最佳实践:)

为了说明我的问题,我想从我正在工作的一个数据集样本中选择一些索引:

我阅读了一些使用 SQL 连接提取的原始数据集。数据变了

然后,这些是我的原始数据:

# I read some raw dataset
data = pd.read_csv('fruit-RawData.csv')
data.head()


    weight  date                number  lat      lng          farmName
0   3.09    2012-07-27 07:08:58     15   57.766231 -16.762676   Totti
1   1.50    2012-07-27 07:09:01     15  57.766231 -16.762676    Totti
2   10.50   2012-07-27 07:09:02     15  57.766231 -16.762676    Totti
3   2.50    2012-07-27 07:09:04     15  57.766231 -16.762676    Totti
4   6.50    2012-07-27 07:09:06     15  57.766231 -16.762676    Totti 

如果我只选择重量、日期和数字...

data = data[['weight','date','number']]
data.to_csv('fruits.csv', sep=',', header=True, index=False)

我得到:

    weight  date               number
0   23.09   2012-07-27 07:08:58 5
1   30.50   2012-07-27 07:08:58 5
2   19.50   2012-07-27 07:08:58 5
3   25.50   2012-07-27 07:08:58 5
4   26.50   2012-07-27 07:08:58 5

这些数据子集可以被视为已转换的中间数据,还是仍然是原始数据?

我不知道这些问题是否有效。

4

0 回答 0