当我根据两个 daraframe 中的“名称”列合并两个数据框时,我得到了重复的行,我想保留第一个。我该如何处理?
df1
Name Address
0 Amy Nan
1 Breen Nan
2 Carly Nan
df2
ID Name Address
0 1102 Amy 899 South
1 1105 Amy 700 Tower
2 1342 Breen 930 Tower
3 4674 Breen 555 Hall
4 5644 Breen 345 Young
5 2340 Carly 8988 House
合并后:
df1
Name Address
0 Amy 899 South
1 Amy 700 Tower
2 Breen 930 Tower
3 Breen 555 Hall
4 Breen 345 Young
5 Carly 8988 House
我想做成这样:
df1
Name Address
0 Amy 899 South
1 Breen 930 Tower
2 Carly 8988 House
最佳答案
这可以很容易地完成,一旦你已经merged你的数据框。
我亲自合并了你的两个数据框,如下所示:
df1 = pd.merge(df1,df2,how='right') # 'right' because we don't want Nan values do we ?
那么你要做的就是drop duplicates如下:
df1.drop_duplicates(subset=['Name'],keep='first',inplace=True)
print(df1)
输出:
Address Name
0 899 South Amy
2 930 Tower Breen
5 8988 House Carly
希望对您有所帮助。快乐编码。
关于python pandas 合并两个数据框并处理重复项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44835919/