将csv转换为kedro中的镶木地板



我有一个相当大的CSV,无法放入内存,我需要将其转换为.parquet文件才能使用vaex。

这是我的目录:

raw_data:
type: kedro.contrib.io.pyspark.SparkDataSet
filepath: data/01_raw/data.csv
file_format: csv
parquet_data:
type: ParquetLocalDataSet
filepath: data/02_intermediate/data.parquet

节点:

def convert_to_parquet(data: SparkDataSet) -> ParquetLocalDataSet:
return data.coalesce(1)

和一个管道:

def create_pipeline(**kwargs):
return Pipeline(
[
node(
func=convert_to_parquet,
inputs="raw_data",
outputs="parquet_data",
name="data_to_parquet",
),
]
)

但如果我执行kedro run,我会收到此错误kedro.io.core.DataSetError: Failed while saving data to data set ParquetLocalDataSet(engine=auto, filepath=data/02_intermediate/data.parquet, save_args={}). 'DataFrame' object has no attribute 'to_parquet'

我应该修复什么来转换数据集?

您可以尝试以下操作。这在过去一直对我有效。

parquet_data:
type: kedro.contrib.io.pyspark.SparkDataSet
file_format: 'parquet'
filepath: data/02_intermediate/data.parquet
save_args:

相关内容

  • 没有找到相关文章