Mind_Jason
2016-10-04 05:08
采纳率: 0%
浏览 17.8k

python dataframe 如何将一列分为两列

我又一个table, 使用pandas读入,其中一列是字符串,例如’address‘列下面的地址是:Guangdong Shenzhen。
现在想要将这一列分为两列,即Guangdong和Shenzhen各一列,请问有什么快速的方法。
我使用了.loc[]的方式,但是速度太慢了,处理一行就要0.15s左右,而我的数据集有400W条记录。

谢谢大家。刚在CSDN提问,没有金币,还望大神不吝赐教。

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • 找呀找呀找资料 2017-11-30 14:46

    dataframe一列变多列,其中用空格作分隔符

    ** table['address'].str.split(r' ',expand=True)**

    用pd.concat把多列加回table,命名新的两列Province, City
    合起来就是

    ** pd.concat([table,table['address'].str.split(r' ',expand=True)],axis=1,names=['Province','City'])**

    评论
    解决 3 无用
    打赏 举报

相关推荐 更多相似问题