comparison - 按 2 列分组,然后将另一列的 1 个值与第 4 列的所有值进行比较
问题描述
我有一个数据框:
dftest = [{'Name': 'John', 'Year': 1976, 'Number1': 123, 'Number2': 155},
{'Name': 'Abel', 'Year': 1977, 'Number1': 123, 'Number2': 123},
{'Name': 'John', 'Year': 1980, 'Number1': 144, 'Number2': 1},
{'Name': 'John', 'Year': 1976, 'Number1': 155, 'Number2': 123},
{'Name': 'John', 'Year': 1976, 'Number1': 777, 'Number2': 777},
{'Name': 'John', 'Year': 1976, 'Number1': 888, 'Number2': 8}]
df = pd.DataFrame(dftest)
我需要按姓名和年份分组,然后查看 Number2 中的任何值是否在 Number1 列中找到。如果没有找到,那么我需要将 Number2 中的值替换为 'NONE'
结果应该是:
dftest = [{'Name': 'John', 'Year': 1976, 'Number1': 123, 'Number2': 155},
{'Name': 'Abel', 'Year': 1977, 'Number1': 123, 'Number2': 123},
{'Name': 'John', 'Year': 1980, 'Number1': 144, 'Number2': 'NONE'},
{'Name': 'John', 'Year': 1976, 'Number1': 155, 'Number2': 123},
{'Name': 'John', 'Year': 1976, 'Number1': 777, 'Number2': 777},
{'Name': 'John', 'Year': 1976, 'Number1': 888, 'Number2': 'NONE'}]
df = pd.DataFrame(dftest)
抱歉格式化。第一次海报。
解决方案
推荐阅读
- cefsharp - 如何绕过 CefSharp 和 libcef 手动处理 POST 请求?
- python - 如何在Django中获取令牌和用户名
- r - 使用 R 中的 group_by() 分组后如何选择单行?
- swift - 如何在 watchOS 上制作简单的模块化大型复杂功能?
- php - 在 Codeigniter 4 中自动更新受保护的允许字段
- android - 如何使用 Android Room Database 并使用 SQLite 的 Case Expression 进行查询
- xamarin.forms - Rg.Plugins.Popup 中的 Scrollview 或 AbsoluteLayout 停止后台点击工作
- verilog - 多输入和门的行为设计
- reactjs - 在 Modal popup 2 打开 React Js 时隐藏 Modal popup 1
- python - 无法从“sklearn.utils.metaestimators”导入名称“available_if”