Skip to main content
 首页 » 编程设计

python之拆分单元格值并更新现有列

2025年05月04日24lyj

只是关于我的问题的简短描述。
我有两列 [name] 和 [address] 以一种或另一种方式,(部分)地址与名称(导入的 csv 文件)位于同一单元格中。

我想拆分名称列中的字符串(按“2/”拆分)并将地址部分添加到列 [address] 并将名称保留在 [名称]列。
当 [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 

请您参考如下方法:

拆分 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