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

运行印度新冠传播预测代码时出现KeyError: 'Date'报错如何解决

Key Error: 'Date'报错成因
  • 核心原因:你在绘制条形图的代码段中,执行了data = data[['State/UnionTerritory', 'Confirmed','Cured','Deaths']]操作,这行代码直接过滤保留了4个字段,将原数据集中的Date列从data变量中完全移除,后续再访问data['Date']自然找不到对应字段触发报错。
  • 其他可能原因:原始数据集的日期列名和你写的Date不匹配,可能存在大小写差异(如date)、前后空格(如 Date/Date )、拼写偏差,也会触发该报错。
  • 额外隐藏问题:你导入依赖时写的import calendra为拼写错误,正确拼写是import calendar,后续运行也会触发模块找不到报错。
解决方法
  1. 调整代码执行顺序,把日期格式处理的逻辑提前到读取、清洗数据之后,绘图操作之前,避免中间操作误删字段
  2. 绘图筛选列时不要直接覆盖原data变量,单独生成绘图用的临时数据集,保留原数据的完整字段给后续时序预测使用
  3. 读取数据后先打印列名确认字段是否正确,避免列名匹配错误

修正后可运行的代码片段

import pandas as pd
import numpy as np
from datetime import datetime
from datetime import date
import calendar # 修正拼写错误
import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns
import plotly
import plotly.express as px
import plotly.graph_objects as go
import cufflinks as cf
import plotly.offline as pyo
from plotly.offline import init_notebook_mode,plot,iplot
import folium
from folium import plugins
plt.rcParams['figure.figsize'] = 10,12
import warnings
warnings.filterwarnings('ignore')

#Initializing the plotly into offline mode.
pyo.init_notebook_mode(connected = True)
#after sucessful complition of work, plotly goes to offline. 
cf.go_offline()

#read the data
data = pd.read_excel(r'C:\Users\myoge\OneDrive\Desktop\covid_19\covid_19_india.xlsx')
# 先确认列名是否正确
print("数据集列名:", data.columns.tolist())
data.head()

#check the dataset have any null values and sum/count those all null values
data.isnull().sum()

#droping the the 'ConfirmedIndianNational' and 'ConfirmedForeignNational' columns.
data.drop(['ConfirmedIndianNational','ConfirmedForeignNational'], axis=1, inplace = True)

# 提前处理日期字段
data['Date'] = pd.to_datetime(data['Date'], dayfirst = True)

#printing the dimentions of the table.
data.shape

#plotting a bar graph to see how many deaths and recovred cases are their in india.
f, ax = plt.subplots(figsize = (25,25))
# 单独生成绘图用数据集,不覆盖原data,保留完整字段
plot_data = data[['State/UnionTerritory', 'Confirmed','Cured','Deaths']].sort_values('Confirmed', ascending= False)
sns.set_color_codes('pastel')
sns.barplot(x='Confirmed', y='State/UnionTerritory', data = plot_data,label = 'Total', color='red' )
sns.set_color_codes("muted")
sns.barplot(x='Cured', y='State/UnionTerritory',data = plot_data,label = 'Cured ', color='blue' )
ax.legend(ncol=2, loc='lower right', frameon = True)
ax.set(xlim = (0, 700000), ylabel = '',xlabel = 'Cases')
sns.despine(left = True, bottom = True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 17:54:04