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

Pandas如何拆分Date列值并生成QTR、YEAR两个新列

实现方法

你用到的df['Date'].str.split(' ', expand=True)已经返回了包含拆分结果的两列DataFrame,直接按列名批量赋值到原DataFrame即可,最简写法如下:

df[['QTR', 'YEAR']] = df['Date'].str.split(' ', expand=True)

如果Date列的两个值之间可能存在多个空格、制表符等空白字符,可以修改split参数适配,避免出现空值:

# \s+ 匹配任意数量的空白字符,兼容性更强
df[['QTR', 'YEAR']] = df['Date'].str.split('\s+', expand=True)

附完整可运行的测试代码:

import pandas as pd

# 构造和你场景一致的示例数据
df = pd.DataFrame([
    ['aa', 'Q1 2022', 'hi'],
    ['aa', 'Q1 2022', 'hi'],
    ['aa', 'Q1 2022', 'hi']
], columns=['ID', 'Date', 'STAT'])

# 拆分生成新列
df[['QTR', 'YEAR']] = df['Date'].str.split(' ', expand=True)

# 输出验证结果
print(df)

运行后输出的结果完全符合预期要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 18:36:09