想要在特定条件下将两列合并为一列。
我的数据如下
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列。
在结果中,我希望这样。
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']
但是我不能替换或修改C列中的Nan
值。
谢谢。
答案 0 :(得分:4)
也许您可以使用:
df['C'] = df[['A', 'B']].max(axis=1)
答案 1 :(得分:1)
import numpy as np
df['C'] = np.where(df['A']>df['B'], df['A'], df['B'])