轻松读取具有不同架构的多个实木复合地板文件

时间:2019-09-03 21:10:25

标签: python dataframe dask parquet fastparquet

我想用dask读取具有不同方案的多个镶木文件到pandas数据帧,并能够合并这些方案。当我谈论不同的方案时,我的意思是,在所有这些文件中都有公共列,但在某些文件中有一些其他列中不存在的列。

不幸的是,当我用

读取文件时

dd.read_parquet(my_parquet_files, engine="fastparquet")

我只有共同的专栏读过。我知道在spark中有一个读取选项mergeSchema,我想知道是否有一种简单的方法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

我建议先阅读不同类型的文件,然后将其与dd.concat串联

dfs = [dd.read_parquet(...) for ... in ...]
df = dd.concat(dfs, axis=0)

然后,Pandas用来连接具有混合列的数据帧的任何策略都将接管。如果熊猫支持这种行为,那么Dask数据框可能会支持这种行为。

如果没有,那么听起来您正在请求功能请求,在这种情况下,您可能应该在https://github.com/dask/dask/issues/new处提出问题