У меня есть список строк, которые я пытаюсь найти в столбце DF pandas, и удаляю все строки, содержащие элемент этого списка.
Вот код для поиска определенного столбца, а затем удаления строки, содержащей подстроку текста в кавычках.В этом случае все строки, содержащие 'dave' в столбце Owner_Name, будут удалены.само по себе это прекрасно работает, именно так, как и ожидалось.
df = df[~df.Owner_Name.str.contains('dave')
Когда я пытаюсь автоматизировать это для списка из примерно 54 элементов, он зависает и удаляет только некоторые, но не все.Есть идеи почему?Вот мой простой код для цикла (макет, чтобы показать, что я делаю, а не мой настоящий код):
badWords= ['random stuff','code words','secret squirrel','blue','black','dave']
for word in badWords:
df = df[~df.Owner_Name.str.contains(word)]
print('Total Rows Left',df.shape[0], word)
Я не получаю никаких ошибок, но он, конечно, не работает, как яхочу.Например, после цикла в столбце Owner_Name все еще присутствуют элементы «dave», хотя он предположительно проходит по списку.Я даже поместил хлебные крошки, чтобы вызвать передаваемый элемент, поэтому он выполняет цикл, но похоже, что str.contains ('') не работает должным образом для удаления строк.Я позаботился о том, чтобы все совпадало с регистром моих объектов списка и в df, так что это не должно быть проблемой.Я действительно озадачен и не могу найти что-либо в стеке по этому конкретному вопросу.