Pandas_Merge两个大型数据集

时间:2018-06-18 14:23:33

标签: python python-3.x pandas

我正在使用Pandas进行分析(我目前正在使用Jupyter Network)。我有两个大型数据集(一个是14 GB,第二个是4 GB)。我需要根据列合并这两个数据集。我使用以下代码:

 df = pd.merge(aa, bb, on='column', how='outer')

通常,此代码有效。但是,由于我的数据集很大,需要花费很多时间。我在4小时前运行我的代码,但仍在继续。我的机器的RAM是8 GB。 你有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您可以尝试使用dask.dataframe并行化您的任务:

import dask.dataframe as dd

# define lazy readers
aa = dd.read_csv('file1.csv')
bb = dd.read_csv('file2.csv')

# define merging logic
dd_merged = aa.merge(bb, on='column', how='outer')

# apply merge and convert to dataframe
df = dd_merged.compute()