如何合并来自多个分支(Git 和 DVC)的数据 (CSV) 文件?
How to merge data (CSV) files from multiple branches (Git and DVC)?
背景:在我的项目中,我使用 GIT 和 DVC 来跟踪版本:
- GIT - 仅适用于源代码
- DVC - 用于数据集、模型对象和输出
我正在不同的分支中测试不同的方法,即:
- random_forest
- neural_network_1
- ...
通常作为输出,我将预测保存在具有标准化名称的 csv 文件中(即:pred_test.csv)。因此,在不同的分支中,我有不同的 pred_test.csv 文件。该文件的结构非常简单,它包含两列:
- ID
- 预测
问题:将这些预测文件合并成单个大文件的最佳方法是什么?
我想获取一个文件结构:
- ID
- 预测_random_forest
- 预测_neural_network_1
- 预测_...
我的主要问题是如何访问不同分支中带有预测的文件?
在这种情况下我会尝试使用 dvc get
:
dvc get -o random_forest_pred.csv --rev random_forest . pred_test.csv
它应该从 random_forest
分支带来 pred_test.csv
。
Mind the .
before the pred_test.csv
please, it's needed and it means that "use the current repo", since dvc get
could also be used on other repos (e.g. GitHub URL)
那么我认为您可以使用一些 CLI 或编写脚本来加入文件:
背景:在我的项目中,我使用 GIT 和 DVC 来跟踪版本:
- GIT - 仅适用于源代码
- DVC - 用于数据集、模型对象和输出
我正在不同的分支中测试不同的方法,即:
- random_forest
- neural_network_1
- ...
通常作为输出,我将预测保存在具有标准化名称的 csv 文件中(即:pred_test.csv)。因此,在不同的分支中,我有不同的 pred_test.csv 文件。该文件的结构非常简单,它包含两列:
- ID
- 预测
问题:将这些预测文件合并成单个大文件的最佳方法是什么?
我想获取一个文件结构:
- ID
- 预测_random_forest
- 预测_neural_network_1
- 预测_...
我的主要问题是如何访问不同分支中带有预测的文件?
在这种情况下我会尝试使用 dvc get
:
dvc get -o random_forest_pred.csv --rev random_forest . pred_test.csv
它应该从 random_forest
分支带来 pred_test.csv
。
Mind the
.
before thepred_test.csv
please, it's needed and it means that "use the current repo", sincedvc get
could also be used on other repos (e.g. GitHub URL)
那么我认为您可以使用一些 CLI 或编写脚本来加入文件: