Получить строку с четвертой запятой - PullRequest
0 голосов
/ 27 марта 2020

У меня есть датафрейм, и в одном столбце содержится адрес, и я хочу получить город из строки. Например, я хочу получить Умбрию снизу. (название города после 4-й запятой)

Strada statale 71 Umbro Casentinese, Case Lunghe, Città della Pieve, Perugia, Umbria, 06062, Italia'

Я попытался найти ниже, но только вернуть индекс

a = 'Strada statale 71 Umbro Casentinese, Case Lunghe, Città della Pieve, Perugia, Umbria, 06062, Italia'
a.find(','4)
return : 35

1 Ответ

0 голосов
/ 27 марта 2020

Не знаю, имеет ли pandas (который я предполагаю, что вы используете) какие-либо встроенные функции для этого или нет. Если это так, это предпочтительнее, потому что это будет намного быстрее, чем любой код python, который вы напишите.

Но вот как это сделать в чистом виде python:

def get_chunk(text, split_str = ",", pos = 4):
    # split the string into chunks (frags) #
    text = text.split(split_str)

    # assuming all your addresses use the same format, this'll get you the City #
    return text[pos]


get_chunk(a) # output: Umbria

Или вы можете просто сделать простой однострочный вместо целой функции:

city = a.split(',')[4]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...