熊猫中的 IF 其他基于数据帧列值



我有以下数据帧,如果数据帧的值不是 0,我想除以 1 或另一个数据帧列。

你可以使用 np.where:

df['abc_new'] = np.where(df.abc.eq(0), df.xyz, df.xyz.div(df.abc))
timestamp       device  abc     xyz     abc_new
0   2019-11-08  device1 1000    2000    2.000000
1   2019-11-09  device1 2000    3000    1.500000
2   2019-11-10  device1 0       5000    5000.000000
3   2019-11-11  device1 0       5000    5000.000000
4   2019-11-12  device1 5000    2000    0.400000
5   2019-11-13  device1 6000    1000    0.166667

或者您可以使用:

df.xyz.div(df.abc.add(df.abc.eq(0)))

相关内容

最新更新