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

使用pd.read_csv时如何自动解析所有未知列数/列名的日期列

解析未知列数的日期列(多级索引CSV)

针对多级索引CSV文件中日期列数量、列名不固定的情况,有三种实用解决方法:

方法1:先探测日期列再读取

先读取少量数据提取非索引列列表,再针对性解析日期:

# 读取表头和1行数据,获取所有非索引列(即日期列)
temp_df = pd.read_csv('file.csv', header=0, nrows=1, index_col=[0,1,2,3])
date_cols = temp_df.columns.tolist()
# 正式读取文件并解析所有日期列
df = pd.read_csv('file.csv', header=0, parse_dates=date_cols, dayfirst=True, index_col=[0,1,2,3])

方法2:自动识别日期列

如果日期列是pandas可识别的标准格式,直接开启自动解析(注意:若其他列存在类似日期的格式,可能会被误解析):

df = pd.read_csv('file.csv', header=0, parse_dates=True, dayfirst=True, index_col=[0,1,2,3])

方法3:读取后批量转换

先读取全量数据,再对非索引列批量尝试转换为datetime类型,无法转换的列会保留原类型,兼容性更强:

# 先读取文件,暂不解析日期
df = pd.read_csv('file.csv', header=0, index_col=[0,1,2,3])
# 批量转换非索引列为datetime,忽略无法转换的列
df = df.apply(pd.to_datetime, dayfirst=True, errors='ignore')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 09:41:12