Мне интересно, есть ли более эффективный способ использовать функцию str.contains() в Pandas, чтобы искать сразу две частичные строки. Я хочу выполнить поиск по определенному столбцу в dataframe для данных, содержащих либо "nt", либо "nv". Сейчас мой код выглядит следующим образом:
df[df['Behavior'].str.contains("nt", na=False)]
df[df['Behavior'].str.contains("nv", na=False)]
И затем я добавляю один результат другому. Я хотел бы использовать одну строку кода для поиска любых данных, которые включают "nt" ИЛИ "nv" ИЛИ "nf". Я играл с некоторыми путями, которые, как я думал, должны работать, в том числе просто придерживаться трубы между терминами, но все это приводит к ошибкам. Я проверил документацию, но я не рассматриваю это как вариант. Я получаю такие ошибки:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-113-1d11e906812c> in <module>()
3
4
----> 5 soctol = f_recs[f_recs['Behavior'].str.contains("nt"|"nv", na=False)]
6 soctol
TypeError: unsupported operand type(s) for |: 'str' and 'str'
Есть ли быстрый способ сделать это? Спасибо за любую помощь, я новичок, но я ЛЮБЛЮ pandas для перебора данных.