python - 如何在熊猫数据框中将两列合并为一列
问题描述
想在特定条件下将两列合并为一列。
我的数据如下
idx A B
0 0.5 1.2
1 1.1 0.7
2 0.1 0.3
3 2.0 0.9
使用 Pandas 数据框,我想在条件中创建 C 列。
- 如果 A 列 > B 列,则 C 列获取 A 列的值。
- 如果 B 列 > A 列,则 C 列获取 B 列的值。
结果,我期望这样。
idx A B C
0 0.5 1.2 1.2(B data)
1 1.1 0.7 1.1(A data)
2 0.1 0.3 0.3(B data)
3 2.0 0.9 2.0(A data)
我尝试了 .loc 函数,例如:
df['C'] = df.loc[df['A'] > df['B'], 'A']
但我无法替换或修改Nan
C 列中的值。
谢谢你。
解决方案
也许你可以使用:
df['C'] = df[['A', 'B']].max(axis=1)
推荐阅读
- reactjs - 在异步函数中使用 React useState 钩子更新函数
- rest - 如何使用 REST API 递归获取 SharePoint 文档库子文件夹、文件夹计数和文件计数?
- c - 是否可以使用具有误导性语法的 for 循环?
- jquery - 使用 Jquery,我可以在移动浏览器中阻止横向模式吗?
- java - 从 html - 本地网站 - java - jsoup 读取实时数据
- openssl - 如何在终端将十六进制哈希转换为二进制?
- python - 使用 Cerberus 基于条件验证依赖关系
- node.js - 如何在我的 nodejs 文件中获取变量的值
- c# - Linq - 如何在 where 子句中使用 2 列
- javascript - Angular *ngIf 与基于结果模型的异步管道内部条件