我有两个数据帧,一个有超过60000000行,另一个有500000行。我想基于多索引合并这两个数据帧。我的IDE是jupyter,我的PC内存是16G,CPU是2.3GHz,64位。你知道吗
如何优化合并? 我有一些要求。我需要得到重叠的部分。 另外,我想知道是否有更深层次的方法来优化它,比如使用Cpython之类的?我不太清楚,因为我刚在这里读到enhancing performance
dfa类似于:
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:
解决方案:
Pandas documentation: Merge, join, and concatenate
你试过merge操作吗?你知道吗
df=df1.merge(df2,how='outer',on='your required column or index')
Parameters:
如何:{'left'、'right'、'outer'、'inner'},默认为'inner'
左:仅使用左框架中的键,类似于SQL左外部联接;保留键顺序
右:仅使用右帧中的键,类似于SQL右外部联接;保留键顺序
外部:使用来自两个帧的键的并集,类似于SQL完全外部连接;按字典顺序对键排序
内部:使用两个帧的键的交集,类似于SQL内部连接;保留左键的顺序
上:标签或列表:-字段名加入。必须在两个数据帧中找到。如果on为None且不在索引上合并,则默认情况下,它在列的交叉点上合并。你知道吗
相关问题 更多 >
编程相关推荐