You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将DataFrame的年份范围列拆分为单独列?

拆分Pandas DataFrame中的年份范围列

1. 构造示例数据

先还原你的数据集:

import pandas as pd

data = {
    "Name": ["Andy", "Bruce"],
    "Years Range": ["1985 - 1987", "2011 - 2018"]
}
df = pd.DataFrame(data)

2. 拆分年份列

直接用Pandas的str.split()方法,指定分隔符为' - '(注意前后的空格),设置expand=True就能直接把拆分结果扩展为两列:

# 拆分并生成新列
df[["Year Start", "Year End"]] = df["Years Range"].str.split(' - ', expand=True)

如果你的数据里分隔符前后的空格不固定(比如有的是1985-1987,有的是1985 - 1987),可以用正则表达式匹配任意空格:

# 兼容任意空格的拆分方式
df[["Year Start", "Year End"]] = df["Years Range"].str.split(r'\s*-\s*', expand=True)

3. 可选:转换年份为数值类型

如果需要把年份从字符串转为整数(方便后续计算),执行这两步:

df["Year Start"] = df["Year Start"].astype(int)
df["Year End"] = df["Year End"].astype(int)

最终结果

处理后的数据如下:

NameYears RangeYear StartYear End
Andy1985 - 198719851987
Bruce2011 - 201820112018

内容的提问来源于stack exchange,提问作者Rob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 17:55:23