如何按空格分隔符拆分含单位的字符型数据列?
字符型“数值+单位”列拆分实现方案
Pandas 批量处理(适配8000+行数据量)
针对你的两列均为单空格分隔数值、单位的格式,可以直接调用pandas的字符串拆分能力完成处理,无需循环逐行操作:
- 读入原始数据集:
import pandas as pd # 替换为你自己的数据集文件路径,支持csv、xlsx等格式 df = pd.read_csv("your_dataset.csv")
- 对目标列执行拆分,并重命名列匹配目标格式:
# 拆分Mileage列,expand=True表示将拆分结果转为独立列 mileage_part = df["Mileage"].str.split(" ", expand=True) mileage_part.columns = ["Mileage 1", "Mileage 2"] # 拆分Engine列 engine_part = df["Engine"].str.split(" ", expand=True) engine_part.columns = ["Engine 1", "Engine 2"] # 合并最终结果:移除原有的两列,拼接拆分后的新列 final_df = pd.concat( [df.drop(columns=["Mileage", "Engine"]), mileage_part, engine_part], axis=1 ) # 可选优化:将拆出的数值列转为数值类型,方便后续计算 final_df["Mileage 1"] = pd.to_numeric(final_df["Mileage 1"]) final_df["Engine 1"] = pd.to_numeric(final_df["Engine 1"])
如果排查发现个别单元格存在连续多空格的情况,可将拆分语句中的" "替换为正则匹配r"\s+",自动识别任意长度的连续空格作为分隔符,避免拆分错位。
Excel 无代码处理
如果不使用编程工具,用Excel内置的分列功能也能快速完成操作:
- 选中
Mileage整列,点击顶部「数据」选项卡下的「分列」功能 - 向导中选择「分隔符号」模式,分隔符勾选「空格」,确认后即可得到拆分后的两列,手动将列名修改为
Mileage 1、Mileage 2 - 对
Engine列重复上述操作,拆分后将列名修改为Engine 1、Engine 2即可 - 完成后删除原始的两列合并值,避免数据冗余。
内容的提问来源于stack exchange,提问作者ahad lone
相关产品推荐
相关产品推荐

