kedro DataSet加载PartitionedDataSet时出错



我正在使用PartitionedDataSet从azure blob存储加载多个csv文件。我在数据目录中定义了我的数据集,如下所示。

my_partitioned_data_set:
type: PartitionedDataSet
path: my/azure/folder/path
credentials: my credentials
dataset: pandas.CSVDataSet
load_args:
sep: ";"
encoding: latin1

我还定义了一个节点来组合所有分区。但是,在将每个文件加载为CSVDataSet时,kedro没有考虑load_args,因此我得到了以下错误。

Failed while loading data from data set CSVDataSet(filepath=my/azure/folder/path, load_args={}, protocol=abfs, save_args={'index': False}).
'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte 

该错误表明,在加载CSVDataSet时,kedro没有考虑在PartitionedDataSet中定义的load_args。并将一个空dict作为load_args参数传递给CSVDataSet。我正在遵循文档https://kedro.readthedocs.io/en/stable/05_data/02_kedro_io.html#partitioned-dataset我没有犯错误。

在数据集内移动load_args

my_partitioned_data_set:
type: PartitionedDataSet
path: my/azure/folder/path
credentials: my credentials
dataset:
type: pandas.CSVDataSet
load_args:
sep: ";"
encoding: latin1
  • 数据集外部提到的load_args被传递到相应文件系统实现的find()方法中

  • 要将细粒度配置传递到底层数据集,请将其放入dataset中,如上所述。

您可以查看文档中的详细信息

https://kedro.readthedocs.io/en/stable/05_data/02_kedro_io.html?highlight=partitoned%20dataset#partitioned-数据集定义

相关内容

  • 没有找到相关文章

最新更新