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

如何将日期列转换为datetime格式并设置为DataFrame索引?

解决年月格式日期转datetime并设为索引的问题

处理步骤:

  • 用pandas.to_datetime()转换日期列,针对"月 年"格式可自动解析,或指定格式字符串提升准确性
  • 将转换后的日期列设为DataFrame的索引

完整代码示例:

import pandas as pd

# 构造你的原始数据
data = {
    'date': ['Jan 1749', 'Feb 1749', 'Mar 1749', 'Apr 1749', 'May 1749'],
    'spots': [58.0, 62.6, 70.0, 55.7, 85.0]
}
df = pd.DataFrame(data)

# 方式1:让pandas自动解析日期格式
df['date'] = pd.to_datetime(df['date'])

# 方式2:指定格式字符串(批量处理时更稳定,%b代表缩写月份名,%Y代表4位年份)
# df['date'] = pd.to_datetime(df['date'], format='%b %Y')

# 将date列设为数据索引
df = df.set_index('date')

# 验证转换结果
print(df.index)

补充说明:

  • 转换后的datetime会自动补全日期为当月第一天(比如Jan 1749转为1749-01-01),这是datetime类型的必要特性,不影响后续按年月维度的数据分析
  • 若不需要保留原date列,可合并转换与索引设置为一步:
df = df.set_index(pd.to_datetime(df['date'], format='%b %Y')).drop('date', axis=1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 18:31:00