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

Python透视表后Date列转索引引发KeyError问题求助

解决透视表后DatetimeIndex引发的KeyError问题

问题根源很明确:你用pd.pivot_table生成df2时,把Date设为了行索引,此时它是DatetimeIndex类型,不再是普通的数据列。当你绘图时指定x='Date',程序会去列里找这个字段,自然会触发KeyError。

给你三种实用的解决办法:

方法1:重置索引,将Date转为普通列

如果后续还需要把Date当作列来操作,直接重置索引就行:

df2 = df2.reset_index()
# 之后绘图就可以正常用x='Date'了,比如:
df2.plot(x='Date', y='你的目标列名')

方法2:绘图时直接使用索引作为X轴

不想改动数据结构的话,直接调用索引作为X轴数据源:

用Matplotlib绘图

import matplotlib.pyplot as plt
plt.plot(df2.index, df2['目标列名'])
plt.xlabel('Date')  # 手动给X轴加标签
plt.show()

用Seaborn绘图

import seaborn as sns
sns.lineplot(data=df2, x=df2.index, y='目标列名')

方法3:用Pandas自带绘图时指定use_index参数

Pandas的绘图函数支持直接用索引当X轴,只需开启use_index:

df2.plot(use_index=True, xlabel='Date', y='目标列名')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 19:15:28