我希望我的代码先查看第一列。如果该行有一个有效的数字,请将该值作为Col 3值。如果没有,第二个选择是将Col 2的值作为Col 3中的值。是否有可以执行此操作的函数?
COL1 COL2 COL3
0 1 2
1 nan 4
2 3 nan
3 4 8
4 nan 10
5 6 nan
COL3
0 1
1 4
2 3
3 4
4 10
5 6
尝试此
df['col 3'] = np.where(df['col 1'].isnull(),df['col 2'],df['col 1'])
iiuc:
df['COL3'] = df.bfill(axis=1)['COL1']
给出:
COL1 COL2 COL3
0 1.0 2.0 1.0
1 NaN 4.0 4.0
2 3.0 NaN 3.0
3 4.0 8.0 4.0
4 NaN 10.0 10.0
5 6.0 NaN 6.0