2016-11-07 4 views
1

У меня есть строковая переменная (sample_id), и я пытаюсь увидеть, что этот элемент существует в серии pandas.находится в сравнении с сериями pandas

Например:

sample_id = "HERUSAF000043287899" 

и

>>> failed.ID 
5  HERUSAF000043287899 
175 HERUSAM000043667608 
195 HERUSAM000043667594 
212 HERUSAF000043733959 
213 HERUSAF000043733954 
214 HERUSAM000043600074 
215 HERUSAF000043733999 
216 HERUSAF000043733982 
217 HERUSAF000043733983 
220 HERUSAM000043733661 
221 HERUSAM000043734015 
222 HERUSAM000043631768 
223 HERUSAM000043733650 
224 HERUSAM000043733649 
225 HERUSAM000043733665 
227 HERUSAM000043734019 
Name: ID, dtype: object 

Тем не менее, когда я делать сравнения:

>>> sample_id in failed.ID 
False 

Но, если сравнить значения по отдельности, сравнение работ:

>>> sample_id == failed.ID.iloc[0] 
True 

Как я могу проверить индивидуальное значение в серии без проведения индивидуальных проверок?

ответ

1

Оператор in проверяет индекс pandas. Проверьте значения явно:

sample_id in failed.ID.values 
+0

Это сработало. Спасибо за помощь! –

+0

@CarrieBrown Нет проблем. Если вы считаете, что это отвечает на вопрос, вы можете принять ответ, используя галочку, - и я был бы очень благодарен за повышение! :) –

+0

Пойдем, просто дождаемся таймера, прежде чем я смогу принять :) –

0

Вы также можете использовать удобный метод серии isin.

failed.ID.isin([ sample_id]) 
+0

Я преследовал этот проспект, но возвращение было не совсем тем, что я искал (возвращает серию, а не одну логическую) –