Pandas заменить с помощью регулярных выражений - PullRequest
0 голосов
/ 16 января 2020

У меня есть столбец, в котором нулевые / пропущенные значения записаны в виде строк, таких как «Нет классификации», «Неизвестно: нет точной классификации» и других вариантов. Я хотел бы заменить все эти значения на None.

Я пробовал это, но это не работает:

df['Fourth level classification'] = df['Fourth level classification'].replace(
    to_replace=r'.*[Tt]here is no .*', value=None, regex=True
)

Кроме того, как я могу сделать все to_replace регистр строк нечувствителен, чтобы он также соответствовал 'tHere is NO cLaSsification', et c.?

1 Ответ

0 голосов
/ 16 января 2020

Вы можете попробовать это:

df['Fourth level classification'] = (df['Fourth level classification']
                                    .str
                                    .lower()
                                    .replace(r'(.*(there is no).*)', pd.isna, regex=True))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...