读取大数据的最佳方式是什么 pd.concat

what is the best way to read big data and pd.concat

假设我有两个非常大的 hdf 文件,我要读取它们并进行连接。

data = pd.concat([
pd.read_hdf("file1.hdf", key='data'),
pd.read_hdf("file2.hdf", key='data')
])

假设每个文件占用10G内存,我们知道,上面的代码会占用一个 峰值内存使用量为 40g。但问题是我电脑的内存只有 32g,我想知道是否有任何好的方法来读取它们并就地连接以便达到峰值 内存使用量为 20g?

如果你想使用 Pandas 我会输入一个 chunksize 参数。这将创建一个您可以遍历的数据迭代器。

或者,试试 pyspark 或 dask。 Dask 本质上是 pandas,但让我们并行化您的管道,而不是加载整个数据集。