我有一个包含与 COVID-19 数据相关信息的数据集columns = ['total_cases', 'new_cases', 'date']。数据单调增加,至少 new_cases 在 1 月份没有突然飙升。数据集可以在这里找到:https://fnvuusdqoptinxntjrmodi.coursera-apps.org/edit/CovidIndiaData.csv,其中有很多列我只使用 ['total_cases', 'new_cases', 'date']。前 10 天的数据为 0,'new_cases'如下图所示:我使用此代码绘制'date'vs的条形图'new_cases':import pandas as pdimport matplotlib.pyplot as pltimport numpy as npfrom matplotlib.dates import DateFormatterdf = pd.read_csv("CovidIndiaData.csv", parse_dates=['date'], index_col=['date'])df = df[['new_cases', 'total_cases']]df.fillna(0)fig = plt.figure()ax = plt.gca()ax.bar(df.index.values, df['new_cases'], color='purple')ax.set(xlabel="Date", ylabel="New Cases", title="New Cases per day", xlim=["2020-01-01", "2020-07-18"])date_form = DateFormatter("%m-%d")ax.xaxis.set_major_formatter(date_form)ax.xaxis.set_major_locator(mdates.WeekdayLocator(interval=1))plt.setp(ax.get_xticklabels(), rotation=45)plt.show()最终情节如下所示:该图显示了 1 月 7 日(图中的“01-07”)的一些尖峰,其中在数据集中显然 new_cases 为 0。大约每隔一个月间隔一次。这些数据从何而来?如何为这些数据绘制正确的图表?
1 回答
互换的青春
TA贡献1797条经验 获得超6个赞
如果有人遇到类似问题,解决方案是在您的日期不是标准格式时指定日期格式。我所做的是:
mydateparser = lambda x: pd.datetime.strptime(x, "%d-%m-%Y")
df = pd.read_csv("CovidIndiaData.csv", parse_dates=['date'], date_parser=mydateparser, index_col=['date'])
添加回答
举报
0/150
提交
取消