python - 如何拆分文本列并将它们组合成 Pandas DataFrame 中的新列
问题描述
我有一个df:
FROM TO
0 LA:Los_Angeles NY:New_York
1 NY:New_York LA:Los_Angeles
我想将部分文本组合成一个新列,如下所示:
FROM TO MERGED
0 LA:Los_Angeles NY:New_York LA->NY
1 NY:New_York LA:Los_Angeles NY->LA
到目前为止,我的代码是:
df = pd.DataFrame({'FROM':['LA:Los_Angeles', 'NY:New_York'], 'TO':['NY:New_York', 'LA:Los_Angeles']})
print(df)
df['MERGED'] = str(df['FROM']).split(':')[0] + '->' + str(df['TO']).split(':')[0]
print(df)
这回馈:
FROM TO MERGED
0 LA:Los_Angeles NY:New_York 0 LA->0 NY
1 NY:New_York LA:Los_Angeles 0 LA->0 NY
它似乎只是抓住第一行并执行操作。它似乎也以某种方式在字符串中包含了索引,“0”领导了城市。不太确定我哪里出错了。
解决方案
尝试这个
df['MERGED'] = df['FROM'].str.split(':').str.get(0) + '->' +df['TO'].str.split(':').str.get(0)
FROM TO MERGED
0 LA:Los_Angeles NY:New_York LA->NY
1 NY:New_York LA:Los_Angeles NY->LA
推荐阅读
- bash - ZAP API 扫描失败并出现错误读取超时
- treeview - 如何通过鼠标更改treview数据窗口中的默认蓝色选择点头
- sql - 一个选择不适用于另一个,oracle db
- c++ - 为什么我在 CPP 中的 for 循环前后没有任何时差?
- javascript - WIX JS - 自定义预加载器屏幕
- javascript - 目录 jQuery 滑块
- xcode - 可可豆荚未安装
- quasar-framework - 在 vue3 / quasar2 中访问 $route
- java - 我在 Spring 安全性中为我的身份验证管理器设置了一个父级,但它不起作用
- c# - 在c#中确定一个值属于哪个范围