У меня есть следующий список и DataFrame:
mylist = ['foo', 'bar', 'baz']
df = pd.DataFrame({'Col1': ['fooThese', 'barWords', 'baz are', 'FOO: not', 'bAr:- needed'],
'Col2': ['Baz:Neither', 'Foo Are', 'barThese', np.nan, 'but this is fine']})
Я хочу заменить строки из mylist, если они найдены внутри DataFrame. Я могу заменить некоторые, используя следующий шаблон регулярных выражений:
pat = '|'.join([r'\b{}'.format(w) for w in mylist])
df2 = df.replace(pat, '', regex=True)
Однако это не все экземпляры. Мой желаемый вывод следующий:
Col1 Col2
0 These Neither
1 Words Are
2 are These
3 not NaN
4 needed but this is fine