2014-10-28 45 views
1

我想知道是否有可能与np.where在大熊猫 用一种“或”参数熊猫:如何匹配多个模式(OR)与np.where

对于匹配多个模式例如,我尝试在我的DataFrame中创建一个名为'kind'的新列,如果另一列中名为'label' 的值与其他任何列出的模式匹配,则每行填充“test”,否则填充“control ”。

我使用这个:

df['kind'] = np.where(df['label'] == 'B85_C', 'test', 'control') 

而且它与1种模式运作良好

我正在寻找后是这样的:

df['kind'] = np.where(df['label'] == 'B85_C'OR'B85_N' ,'test', 'control') 

任何想法如何执行该操作还是有其他选择? 感谢

回答

1

您可以使用按位或:

(df['label'] == 'B85_C') | (df['label'] == 'B85_N') 

,或者您可以使用isin方法:

df['label'].isin(['B85_C', 'B85_N']) 
+1

你的意思是按位'或'O) – EdChum 2014-10-28 08:51:33