Неверное количество пропущенных элементов 4, размещение подразумевает 1 при извлечении с помощью регулярного выражения - PullRequest
0 голосов
/ 14 октября 2018

У меня есть столбцы в моем фрейме данных (~ 2 миллиона строк), которые выглядят так:

column
1/20/1"ADAF"
1/4/551BSSS
1/2/1AAAA
1/565/1 "AAA="

И я хочу извлечь только:

1/20/1
1/4/551
1/2/1
1/565/1

Я пробовал с:

df['wanted_column'] = df['column'].str.extract(r'((\d+)/(\d+)/(\d+))', expand=True)

Но я получил ошибку:

ValueError: Wrong number of items passed 4, placement implies 1

Кто-нибудь знает, где я не прав?И если есть лучшее и более быстрое решение для этого, я был бы благодарен за предложение.

Заранее спасибо.

1 Ответ

0 голосов
/ 14 октября 2018

Вы можете использовать

df['wanted_column'] = df['column'].str.extract(r'(\d+/\d+/\d+)', expand=True)
                                                 ^           ^

Смысл в том, чтобы использовать только одну группу захвата в регулярном выражении, когда вы используете ее с str.extract.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...