我有下面的代码,但是我不确定这是编写它的最佳方法。是否有更好的方法来引用我将更改归因于的数据框选择?
df.VALUE[df.GROUP == 'A'] = np.where(df.CLASSE[df.GROUP == 'A'] == 'C', 0, df.VALUE[df.GROUP == 'A'])
答案 0 :(得分:1)
无论如何,您都应该避免使用链式分配(在docs中特别建议不要这样做),而应该使用.loc
:
df.loc[df.GROUP == 'A', 'VALUE'] = np.where(df.loc[df.GROUP == 'A', 'CLASSE'] == 'C', 0,
df.loc[df.GROUP == 'A', 'VALUE'])