如何根据 python csv 中的多个条件对现有列进行更改

how to make changes to a existing column based on multiple conditions in python csv

所以我正在进行数据处理,我想根据其他列中的条件对名为“temp_coil”的列进行更改。

这是我做的,它给我错误。

df.temp_coil[df.outdoor_temperature < 20 & df.cooling_state == 1 & df.temp_coil == 0] = 4500

如果outdoor_temperature列小于20,cooling_state列为1,temp_coil列本身为0,我希望答案为4500。需要满足所有条件.

当我 运行 它给我的错误是类型和值错误。 如果此问题已得到解答,请告诉我,我找不到符合我的问题的示例。

您必须使用括号,这样事实 table 就不会产生歧义。对于您的示例,正​​确的代码是:

df.temp_coil[(df.outdoor_temperature < 20) & (df.cooling_state == 1) & (df.temp_coil == 0)] = 4500

或者:

df.temp_coil[df.outdoor_temperature.lt(20) & df.cooling_state.eq(1) & df.temp_coil.eq(0)] = 4500