为了账号安全,请及时绑定邮箱和手机立即绑定

随机数据定期出现在条形图中

随机数据定期出现在条形图中

一只萌萌小番薯 2023-03-16 09:34:52
我有一个包含与 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'])


查看完整回答
反对 回复 2023-03-16
  • 1 回答
  • 0 关注
  • 64 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信