我有一个如下所示的数据帧:
dcc3 manager1 manager2
party_num
L21635789 SBAS01030 A22677981 NaN
L21635789 SBAS02030 NaN A22810282
L21635789 SBAS03030 NaN A21721880
我试图将当前manager2中的一行(不管是哪一行)覆盖到manager1为空/NaN的行中,如下所示:
dcc3 manager1 manager2
party_num
L21635789 SBAS01030 A22677981 A22810282
L21635789 SBAS02030 NaN NaN
L21635789 SBAS03030 NaN NaN
或
dcc3 manager1 manager2
party_num
L21635789 SBAS01030 A22677981 A21721880
L21635789 SBAS02030 NaN NaN
L21635789 SBAS03030 NaN NaN
显然我们需要在DCC3上重新编制索引,但接下来呢?它只需要覆盖这两列(和其他列一样,只覆盖这些列)
我真的需要你的帮助,提前谢谢你
很抱歉,我没有澄清,这是一个基本的案例。在某些情况下,这可能只是一个值(不适用),或者最多为5-6。我以3行为例
这两行代码应该可以为您解决这个问题
下面是我尝试过的几个场景,代码是相同的。看看这是不是你想要的
情景1:
第1行:manager1=NaN,manager2=value
结果:将manager2值分配给第2行
场景1的输出:
情景2:
第1行:manager1=value,manager2=NaN
结果:将manager2值分配给第1行
场景2的输出:
情景3:
第1行:manager1=NaN,manager2=NaN
第2行:manager1=值;manager2=NaN;第3行:manager2=值
结果:将manager3值分配给第2行
场景3的输出:
情景4:
第1行:manager1=value,manager2=NaN
第3行:manager1=value,manager2=value
结果:忽略第1行和第2行,因为第3行同时具有manager1和manager2的值
场景4的输出:
您可以使用
np.where
来完成以下任务:相关问题 更多 >
编程相关推荐