python - python pandas,从现有列创建一个新列,从字符串中获取xn个字符
问题描述
我有一个数据框:
项目
自行车店 - 伦敦
汽车经销商 - 纽约
机场 - 柏林
我想向数据框添加 2 个新列:业务和位置。
我可以使用以下方法找到“-”在字符串中的位置:df['separator'] = df['Project'].str.find('-')
将 2 个新字段放入数据框中的最佳和最干净的方法是什么?即,项目类型和位置
项目项目类型位置
自行车店 - 伦敦 伦敦自行车店
汽车经销商 - 纽约汽车经销商纽约
机场 - 柏林机场 柏林
提前致谢 :)
解决方案
如果您的数据用“-”分隔,您可以一次将其拆分为几列
new_df = df['new_values'].str.split('\n',expand=True)
这里很好地描述了如何将列划分为其他列 http://datalytics.ru/all/kak-v-pandas-razbit-kolonku-na-neskolko-kolonok/
推荐阅读
- python - 如何在反向编码期间将 lat、lon 值从 csv 文件放入 url
- javascript - 使用 Javascript 将 mysql UTC_TIMESTAMP 转换为 CST 和 MST
- mysql - MySQL 中的 SELECT FOR UPDATE 有限制吗?
- angular - 从 Angular 向 Graphdb 发送 SPARQL 更新查询
- jhipster - JHipster + Angular + MongoDB + Docker:初学者问题
- python - 我收到类型错误但不知道为什么?
- ios - 获取属性字符串中的链接范围
- python - 为复杂的视图生成器函数定义 API(具有许多可配置项)
- unity3d - 动态加载的多个 Tilemap 地图
- python - 并非所有行都被添加到 SearchCursor 的列表中