我有一个Pandas数据框:
| 第1栏|第2栏|
| - ------|- ------|
| 无|四个|
| 第二章|五个|
| 无|第二章|
| 无|1个|
| 五个|七|
| 无|五个|
我想用对应的第2列值替换第1列值。但只有当第1列值= 0时,才应替换该值。一旦列值被替换,被替换的值应变为零。基本上,我想交换这些值。
预期输出应为:
| 第1栏|第2栏|
| - ------|- ------|
| 四个|无|
| 第二章|五个|
| 第二章|无|
| 1个|无|
| 五个|七|
| 五个|无|
请帮助代码。
4条答案
按热度按时间wj8zmpe11#
使用布尔索引:
更新数据框:
zbdgwd5y2#
xqk2d5yq3#
您可以使用
mask
:输出:
| 第1栏|第2栏|
| - ------|- ------|
| 四个|无|
| 第二章|五个|
| 第二章|无|
| 1个|无|
| 五个|七|
| 五个|无|
1bqhqjot4#
我们可以使用Numpy where在两列之间交换值。
最终输出