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

使用Python pandas将CSV日序数字段转为2015年%d-%m-%Y格式日期

实现步骤

  • 导入pandas库
  • 读取源CSV文件
  • 将id列(2015年的年日序数)转换为日期类型,再格式化为%d-%m-%Y格式的字符串
  • 调整列顺序后输出结果

完整可运行代码

import pandas as pd

# 读取源CSV文件,sep参数根据实际文件分隔符调整,制表符用'\t',逗号用','
df = pd.read_csv('你的源文件路径.csv', sep='\t')

# 转换id为目标日期格式,以下两种方法选其一即可
# 方法1:通过dayofyear参数转换,逻辑更直观
df['date'] = pd.to_datetime({'year': [2015]*len(df), 'dayofyear': df['id']}).dt.strftime('%d-%m-%Y')

# 方法2:通过origin参数转换,代码更简洁
# df['date'] = pd.to_datetime(df['id'], unit='D', origin=pd.Timestamp('2014-12-31')).dt.strftime('%d-%m-%Y')

# 调整列顺序,只保留要求的两个字段
df = df[['date', 'val']]

# 输出到新CSV文件,不需要索引列就加index=False参数
df.to_csv('输出文件路径.csv', sep='\t', index=False)

# 如需直接查看结果执行下面一行
print(df)

补充说明

  • 读取、输出文件的sep参数要和实际文件的分隔符匹配,示例默认用制表符匹配你给出的文件片段格式
  • 如果不需要日期的前导零,可以调整strftime的格式符:macOS/Linux系统把%d改为%-d、%m改为%-m,Windows系统把%d改为%#d、%m改为%#m即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 14:09:03