Разделение значения ячейки и обновление существующих столбцов - PullRequest
0 голосов
/ 14 декабря 2018

Просто краткое описание моей проблемы.
У меня есть два столбца [name] и [address]. Так или иначе (частичный) адрес находится в той же ячейке, что и имя (импортированоform csv file).

Я бы хотел разделить строку в столбце имени (разделить на '2 /') и добавить адресную часть в столбец [address] и оставить имя вСтолбец [name].
Просто переместите его, когда [address] пусто, и присоединитесь, если [address] не пусто.
Ниже приведен пример.

Необработанные данные из csv:

name;address
Markus M Berg;Kirchenallee 52
Johanna P Wirth 2/Ufnau Strasse 48;
Felix B Beike 2/Mohrenstrasse 47;Dormettingen

Текущая ситуация

name                               | address
------------------------------------------------------------
Markus M Berg                      | Kirchenallee 52
Johanna P Wirth 2/Ufnau Strasse 48 |
Felix B Beike 2/Mohrenstrasse 47   | Dormettingen

Желаемая ситуация:

name                               | address
------------------------------------------------------------
Markus M Berg                      | Kirchenallee 52
Johanna P Wirth                    | Ufnau Strasse 48
Felix B Beike                      | Mohrenstrasse 47 Dormettingen

1 Ответ

0 голосов
/ 14 декабря 2018

Разделить на r'\d/' и переназначить:

v = df.name.str.split(r'\d/', expand=True).fillna('')

df['name'] = v.iloc[:, 0].str.strip()
df['address'] = v.iloc[:, 1].str.cat(df['address'], sep=' ').str.strip()

print(df)
              name                        address
0    Markus M Berg                Kirchenallee 52
1  Johanna P Wirth               Ufnau Strasse 48
2    Felix B Beike  Mohrenstrasse 47 Dormettingen
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...