我试图沿着列轴合并几个pd.DataFrames
,使用索引删除重复项(A和B来自同一个源“表”过滤器,由不同的谓词过滤,我尝试重新组合)
A = pd.DataFrame({"values": [1, 2]}, pd.MultiIndex.from_tuples([(1,1),(1,2)], names=('l1', 'l2')))
B = pd.DataFrame({"values": [2, 3, 2]}, pd.MultiIndex.from_tuples([(1,2),(2,1),(2,2)], names=('l1', 'l2')))
pd.concat([A,B]).drop_duplicates()
失败,因为它忽略了索引并对值执行重复数据消除,因此删除了索引项(2,2)
pd.concat([A.reset_index(),B.reset_index()]).drop_duplicates(subset=('l1', 'l2')).set_index(['l1', 'l2'])
做了我想做的,但我觉得应该有更好的方法
您可以执行一个简单的
concat
并使用index.duplicated
过滤掉DUP相关问题 更多 >
编程相关推荐