фильтрация PANDAS фрейм данных: ошибка: отсутствует), неопределенный подшаблон в позиции 2988 - PullRequest
1 голос
/ 15 марта 2020

Я изучаю Pandas, но все еще на довольно базовом c уровне.

Я запускаю следующую строку для формирования кадра данных на основе списка (WOODProds):

df['Only wood1']=df['Products'].str.contains('|'.join(WOODprods),na=False)

Я понял, что эта ошибка связана с каким-то экранирующим символом, но я не могу понять это.

ошибка: отсутствует), неопределенный подшаблон в позиции 2988

Если я фильтрую с другими списками (не с WOODProds), это работает, поэтому я предполагаю, что проблема в этот список c, который я импортировал из столбца Excel с помощью .tolist ().

Есть предложения? Спасибо!

1 Ответ

1 голос
/ 15 марта 2020

Существует проблема с некоторыми специальными значениями регулярных выражений в списке WOODprods, поэтому необходимо передавать значения на re.escape:

import re
df['Only wood1']=df['Products'].str.contains('|'.join(re.escape(x) for x in WOODprods),na=False)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...