繁体   English   中英

比较python中的两个数据帧

[英]Comparing Two Data Frames in python

我有两个数据框。 我必须比较两个数据框并使用 python 获取不匹配数据的位置。

注意:第一列将始终不是唯一的。

数据帧 1:

   0         1   2                          3        4
0  1     Dhoni  24  Kota                       60000.0
1  2     Raina  90  Delhi                      41500.0
2  3     Kholi  67  Ahmedabad                  20000.0
3  4    Ashwin  45  Bhopal                      8500.0
4  5    Watson  64  Mumbai                      6500.0
5  6  KL Rahul  19  Indore                      4500.0
6  7    Hardik  24  Bengaluru                   1000.0

数据帧 2

   0         1   2                          3        4
0  3     Kholi  67  Ahmedabad                  20000.0
1  7    Hardik  24  Bengaluru                   1000.0
2  4    Ashwin  45  Bhopal                      8500.0
3  2     Raina  90  Delhi                      41500.0
4  6  KL Rahul  19  Chennai                    4500.0
5  1     Dhoni  24  Kota                       60000.0
6  5    Watson  64  Mumbai                      6500.0

我期望(3,5)-(Indore - Chennai)

df1=pd.DataFrame({'A':['Dhoni','Raina','KL Rahul'],'B':[24,90,67],'C':['Kota','Delhi','Indore'],'D':[6000.0,41500.0,4500.0]})
df2=pd.DataFrame({'A':['Dhoni','Raina','KL Rahul'],'B':[24,90,67],'C':['Kota','Delhi','Chennai'],'D':[6000.0,41500.0,4500.0]})

df1['df']='df1'
df2['df']='df2'
df=pd.concat([df1,df2],sort=False).drop_duplicates(subset=['A','B','C','D'],keep=False)

print(df)
          A   B        C       D   df
2  KL Rahul  67   Indore  4500.0  df1
2  KL Rahul  67  Chennai  4500.0  df2

我添加了 df 列来显示,df 差异来自

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM