我正在与 vaex 和 dask 合作进行一些分析。在分析的第一部分,我对 进行了一些处理dask.dataframe
,我的目的是将我计算的数据帧导出到 vaex 读取的内容中。我想将数据导出为内存可映射格式,如 hdf 或箭头。
dask 允许导出到 hdf 和 parquet 文件。Vaex 允许以 hdf 和 arrow 的形式导入。两者都允许导出和导入为 csv 文件,但我想避免这种情况。
到目前为止,我得到了以下选项(和问题):
- 如果我导出到 hdf5 文件,由于 dask 以行格式导出文件,但 vaex 以列格式读取它,则无法导入文件(https://vaex.readthedocs.io/en/latest/faq.html)。
- 我可以将数据导出到镶木地板文件中,但我不知道如何从 vaex 中读取它们。我在 SO 中看到了一些将文件转换为箭头表的答案,但这需要将表加载到内存中,我不能这样做,因为表太大而无法放入内存。
我当然可以导出到 csv 并将其分块加载到 vaex 中,然后将其导出为列格式 hdf,但我认为这不应该是两个模块用于大对象的目的。
我是否缺少任何选项,并且可以兼容“桥接”这两个模块,而无需将完整表加载到内存中,或者不必读取/写入数据集两次?