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

转置含日期列的DataFrame:日期索引前缀问题及格式需求咨询

解决DataFrame转置后索引带"date."前缀的问题

原因分析

转置后索引出现"date."前缀,大概率是两种情况:

  • 读取数据时,pandas自动将日期列头识别为datetime类型,为避免与内置属性冲突,自动添加了"date."前缀;
  • 原始数据的列名本身就带有该前缀,只是你没留意。

分步解决方案

  1. 确认列名情况
    先打印原DataFrame的列名,明确是不是本身就带前缀:
print(df.columns)
  1. 清理列名(若有前缀)
    如果列名确实以"date."开头,用正则替换去掉前缀:
df.columns = df.columns.str.replace('^date\.', '', regex=True)
  1. 正确转置得到目标结构
    要实现「日期为行、城市为列」的结构,正确步骤是先把City列设为索引,再转置:
# 将City列设为索引
df.set_index('City', inplace=True)
# 执行转置
df_transposed = df.T
# 可选:将索引转为datetime类型,方便后续时间序列操作
df_transposed.index = pd.to_datetime(df_transposed.index)
  1. 若转置后索引仍有前缀,直接清理索引
    如果转置后还是存在"date."前缀,直接处理索引:
df_transposed.index = df_transposed.index.str.replace('^date\.', '', regex=True)
# 转为datetime类型
df_transposed.index = pd.to_datetime(df_transposed.index)

验证结果

打印转置后的DataFrame确认结构:

print(df_transposed.head())

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 20:40:29