熊猫数据框列删除第一个特定字符之前的字符串

时间:2020-09-17 08:56:00

标签: python pandas string split strip

我有一个带有“地址”列的数据框df。我想删除街道地址(理论上是第一个逗号之前的部分),然后继续输入城市级别的地址。

df

Address
777 Brockton Avenue, Abington, MA 2351
30 Memorial Drive, Avon, MA 2322
250 Hartford Avenue, Bellingham, MA 2019
700 Oak Street, Brockton, MA 2301
66-4 Parkhurst Rd, Chelmsford, MA 1824

所需的df

Address
Abington, MA 2351
Avon, MA 2322
Bellingham, MA 2019
Brockton, MA 2301
Chelmsford, MA 1824

我尝试了以下代码,但删除了所有逗号前的所有字符串。我只想删除列中第一个逗号之前的字符串。

df['Address'] = df['Address'].str.split(',').str.get(-1)

谢谢!

1 个答案:

答案 0 :(得分:2)

添加参数n=1以便按第一个逗号分隔:

df['Address'] = df['Address'].str.split(',', n=1).str.get(-1)
print (df)
                Address
0     Abington, MA 2351
1         Avon, MA 2322
2   Bellingham, MA 2019
3     Brockton, MA 2301
4   Chelmsford, MA 1824