我有两个df,一个用于用户名,另一个用于实名。我想知道如何使用另一个df的数据检查我的第一个df中是否有真实姓名,然后替换它。 例如:
import pandas as pd
df1 = pd.DataFrame({'userName':['peterKing', 'john', 'joe545', 'mary']})
df2 = pd.DataFrame({'realName':['alice','peter', 'john', 'francis', 'joe', 'carol']})
df1
userName
0 peterKing
1 john
2 joe545
3 mary
df2
realName
0 alice
1 peter
2 john
3 francis
4 joe
5 carol
我的代码应该替换“peterKing”和“joe545”,因为这些名称出现在我的df2中。我尝试使用pd.contains,但我只能验证是否出现名称。 输出应如下所示:
userName
0 peter
1 john
2 joe
3 mary
有人能帮我吗?提前谢谢
您可以使用
loc[row, colum]
,here您可以查看关于loc
方法的文档。和Series.str.contain方法选择需要替换为实名的用户名。在我看来,这个解决方案在可读性方面是明确的输出:
相关问题 更多 >
编程相关推荐