如何使用pandas.Series.isin指定多个元素

时间:2018-03-24 13:58:45

标签: python pandas dataframe

我有一个正在尝试减少的工作代码

df['Criteria'] = (df['Alpha'] == 3) | (df['Alpha'] == 4) 

我尝试了以下错误(TypeError:isin()需要2个位置参数,但是给出了3个)

df['Criteria'] = df['Alpha'].isin(3,4)

我参考了Pythonic Way to have multiple Or's when conditioning in a dataframe

有人可以告诉我吗? 谢谢

1 个答案:

答案 0 :(得分:2)

您已接近,需要isin中的listtuplearrayset

  

<强> Series.isin(值)

     

:设置或列表式

     

要测试的值序列。传入单个字符串会引发TypeError。相反,将单个字符串转换为一个元素的列表。

df['Criteria2'] = df['Alpha'].isin([3,4])