python - 如果 col 的行中的 str1==str 在另一个 col 的行中,则设置第三个 col 的 str1=str2
问题描述
我有一个合并的数据框,我想在其中检查“profile”列的行中包含的每个字符串与“right_side”列中的每个字符串。如果这两个字符串相等,我想将“profile”列中的 str 替换为“left_side”列中的 str。出于某种原因,我对此感到非常困难,并且尝试了 .loc、dict、map 和 .at 方法,但必须缺少一个组件,每个组件都没有工作。这是数据框:
profile left_side right_side
DevOps Developer NaN NaN
Software Developer Software Development Developer Software Developer
Software Developer Software Development Developer Software Developer
Quality Assurance Quality Assurance Engineer Quality Assurance
十分感谢你的帮助!
解决方案
df.loc[(df["Profile"]==df["right_side"]),"Profile"]=df["left_side"]
print(df)
Profile ... right_side
0 DevOps Developer ... NaN
1 Software Development Developer ... Software Developer
2 Software Development Developer ... Software Developer
3 Quality Assurance Engineer ... Quality Assurance
[4 rows x 3 columns]
这就是你所追求的吗?
推荐阅读
- c# - .NET 5 项目中 System.Web.Http 的 HttpConfiguration
- javascript - SyntaxError:不能在模块外使用 import 语句 - 开玩笑
- reactjs - 堆叠蒙版视图以使弯曲卡反应本机
- windows-8 - 如何为 Windows RT 编写程序?
- php - 数据表编辑器 - 如何在编辑器表单中动态填充选择列表?
- javascript - 如何合并传递给函数的数组?
- swift - RevenueCat 产品数据未显示正确数据
- python - 如何将两个列表打印到一行中
- selenium - Selenium 忽略 SSL ChromeDriver
- flutter - 嗨,我无法创建用户,因为我的代码在代码中的单词“文档”上有错误