Фильтрация в пандах: исключение строк, содержащих часть строки [дубликаты]

Следующий код будет выбирать наблюдения из фрейма данных pandas, которые включают слово Elstar в столбце типа.

df[df['type'].str.contains('Elstar')

Как отредактировать этот код, чтобы исключить те, которые содержат слово Elstar? Я попытался добавить ~ перед фильтром, однако это не дает желаемого эффекта, так как приводит к:

TypeError: bad operand type for unary ~: 'float'

Я нашел решения, в которых строка не должна точно совпадать с другой строкой, но в моем случае часть значения не должна совпадать.


person Ruud Verhoef    schedule 18.03.2021    source источник
comment
Используйте 1_   -  person jezrael    schedule 18.03.2021
comment
@jezrael, зачем это нужно? Я уверен, что нет значений na. Это работает кстати. просто хотелось бы знать почему.   -  person Ruud Verhoef    schedule 18.03.2021
comment
Нет, если вы уверены, что не NaNs, то можете опустить параметр na.   -  person jezrael    schedule 18.03.2021