更新 Pandas df 给定字符串查询

bur*_*000 6 python pandas pandas-loc

由于用户在界面中引入数据,我有一个类似字符串查询的结果。

query = '(ColA=="7") & (ColB=="3") & (ColC=="alpha") & (ColD=="yu")'
Run Code Online (Sandbox Code Playgroud)

现在我想根据这些条件更新 df 的列,为其分配变量 Z。

我不知道是否可以通过某种方式完成loc

df.loc[query, 'ColZ'] = Z
Run Code Online (Sandbox Code Playgroud)

WeN*_*Ben 5

是的,可以这样做query

df.loc[df.query(query).index,'ColZ']=Z
Run Code Online (Sandbox Code Playgroud)