Фильтрация двух столбцов фрейма данных с фильтром
У меня есть датафрейм следующего типа:
df = pd.DataFrame(
{
"Name": [
[
" Verbundmörtel ",
" Compound Mortar ",
" Malta per stucchi e per incollaggio ",
],
[" StoLevell In Absolute ", " StoLevell In Absolute "],
[
" Anhydrit-FlieÃ\x9festrich ",
" Anhydrite Flowing Screed ",
" Massetto a base di anidrite ",
],
],
"NAME_FILE": [
"AdhesiveCoveringPlaster_2",
"AdhesiveMortarLevellInForAEVERO_720",
"AnhydriteFlowingScreed_20",
],
}
)
Я пытаюсь отфильтровать оба столбца по определенным ключевым словам. Идея состоит в том, чтобы получить фрейм данных, в котором у меня есть два столбца, но только со значениями, которые соответствуют условию.
select_materials = {
"Plaster": list(
filter(
lambda x: "Hist".casefold() in x.casefold()
or "Plaster".casefold() in x.casefold()
or "Gips".casefold() in x.casefold(),
df.FILE,
)
)
}
Для удобства я вставил лишь несколько строк из всего файла, но надеюсь, что моя цель ясна. В результате должен получиться кадр данных с фильтрами, примененными к обоим столбцам. Если отфильтрованное слово присутствует в любом столбце той же строки, то следует сохранить всю строку.