Python3 Pandas Dataframe拆分列

时间:2018-01-12 19:40:38

标签: python pandas

我的数据框上有一列包含以下内容

Wal-Mart Stores, Inc., Clinton, IA 52732  
Benton Packing, LLC, Clearfield, UT 84016  
North Coast Iron Corp, Seattle, WA 98109  
Messer Construction Co. Inc., Amarillo, TX 79109  
Ocean Spray Cranberries, Inc., Henderson, NV  89011  
W R Derrick & Co.  Lexington, SC 29072   

我有问题使用正则表达式捕获它到目前为止我的正则表达式适用于前两行:

[A-Z][A-za-z-\s]+,\s{1}(Inc.|LLC)

如何将列拆分为4个附加列?即Column1 =公司名称,第2列=城市,第3列=州,第4列=邮政编码。

输出示例如下所示:

Company_Name           City     State  ZipCode  
Wal-Mart Stores, Inc.  Clinton  IA     52732

1 个答案:

答案 0 :(得分:0)

名称可能是最棘手的部分,但如果您知道city,state,zip的结构将始终相同(即没有额外的逗号),则可以使用rsplit来分割字符串。同样,pandas也有str.rsplit方法。

service.getMyData().enqueue(new Callback<ResponseBody>() {
    @Override
    public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
        if (response.isSuccessful()) {
            gson.fromJson(response.body().charStream(), MyClass.class);
        } else {
            //Do something in case of error
        }
    }

    @Override
    public void onFailure(Call<ResponseBody> call, Throwable t) {

    }
});