我有两个数据框,一个有超过 60,000,000 行,另一个有 500,000 行。我想基于多索引合并这两个数据帧。我的IDE是jupyter,我的PC内存是16G,CPU是2.3GHz,64bits。
如何最佳地合并它? 我有一些要求。我需要得到重叠的部分。 另外,我想知道是否有更深层次的优化方法,比如使用 Cpython 之类的?我不知道确切原因我只是在这里阅读 enhancing performance
df A 是这样的:
time brand
user_id sku_id
27630 37957 2016-02-01 07:43:14 8
489 37957 2016-02-01 07:43:04 8
489 37957 2016-02-01 07:43:02 8
661 21546 2016-02-01 07:43:02 6
……
df B 是这样的:
time brand
user_id sku_id
27630 37957 2016-02-01 07:43:14 8
489 37957 2016-02-01 07:43:04 8
764 37957 2016-02-01 07:43:02 8
667 2156 2016-02-01 07:43:02 3
……
请您参考如下方法:
我会使用 Index.intersection在这种情况下:
解决方案:
In [159]: A.loc[A.index.intersection(B.index)]
Out[159]:
time brand
user_id sku_id
489 37957 2016-02-01 07:43:04 8
37957 2016-02-01 07:43:02 8
27630 37957 2016-02-01 07:43:14 8
