熊猫逻辑更复杂?

时间:2018-08-02 19:12:19

标签: python pandas

如果我想为多个特征匹配一列,即

df.loc[df['col1'] == (5 or 6), 'col2'] = 5

我该怎么做?我尝试了这种方法,但是没有用。

2 个答案:

答案 0 :(得分:1)

df.loc[(df['col1']==5) | (df['col1']==6),'col2'] = 5

在本示例中,您也可以使用in,但是在某些复杂逻辑的情况下,请使用|的bitwise操作。 (或)和&(和)是必需的。

答案 1 :(得分:0)

您可以使用pandas.query

idx  = df.query('col1 == 1.178238 or col1 == 0.144455').index
df.loc[idx, 'col2'] = 5