我有两只熊猫
df1
jon,12,NewYork
jon,12,NewYork
james,14,LA
df2
jon,12,NewYork
james,14,LA
我想对它们进行比较,得出如下差异
德尔塔夫
jon,12,NewYork
我尝试了pd.concat([df1,df2,df2],axis=0,sort=False).drop_duplicates(keep=False)
当没有重复项时,这可以正常工作,但当一个数据帧包含重复项而另一个数据帧具有单个条目时,这不会产生差异。我还尝试了Python Pandas - Find difference between two data frames中提到的解决方案,但在本例中也返回空数据帧
我认为这不是一个重复的问题,因为对于this question返回上述场景的空数据帧给出了一个答案
人们说这是不可能的。我们可以这样做吗:
添加一列,给出每行的出现次数
将以上df1转换为
jon,12,NewYork,2
james,14,LA,1
将以上df2转换为
jon,12,NewYork,1
现在我可以使用所有列作为索引并减去最后一列
您可以添加新列以捕获重复项:
之后,可以再次删除添加的列
见评论。希望这有帮助
相关问题 更多 >
编程相关推荐