加载 PartitionedDataSet 时出现 kedro DataSetError
kedro DataSetError while loading 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。并将空字典作为 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
中,如上所示。
您可以在文档中查看详细信息
我正在使用 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。并将空字典作为 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
中,如上所示。
您可以在文档中查看详细信息