Разделение адреса pandas на номера улиц и домов - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть один фрейм данных с адресными данными, структурированными так:

tbm_a['address']

Rue de blabla 20

Vossenstraat 7

Rue Père Jean 3 boite Z

Rue XSZFEFEF 331

Я хотел бы разделить его на один столбец с улицей и один с номером дома .

Я пытался с этим для l oop, но не смог:

import re
s = list(zip(tbm_a['address']))
for addr in s:
    tbm_a['street'] = re.findall('[^\d]*', addr)[0].strip()
    tbm_a['num'] = str(addr[len(street):].strip().split(' '))

Затем я попытался с этим, и получил номер:

tbm_a['address_num'] = tbm_a['address'].str.extract('(?P<number>\d+)', expand=True)

Но Мне не удалось получить название улицы. Есть предложения?

1 Ответ

0 голосов
/ 01 апреля 2020

Из ваших данных вы можете сделать:

df.address.str.extract('(?P<Street>\D+) (?P<Number>\d+.*)')

Вывод:

          Street     Number
0  Rue de blabla         20
1   Vossenstraat          7
2  Rue Père Jean  3 boite Z
3   Rue XSZFEFEF        331

Помните, что это не удастся, если у вас есть номер в названии вашей улицы, например, 5th avenue.

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