如何使用pandas和matplotlib创建按月的日变化曲线?

2024-09-30 18:15:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在创建一组图表,显示从pandas dataframe中按月计算的日变化曲线。在

我有一个pandas数据帧,有多个列和数千行。在

                      gh  flg_gh   dh  flg_dh  ...      ap  flg_ap  GHIc DNIc
datetime                                       ...                           
2014-02-21 22:07:30  0.0       1  0.0       1  ...  1015.0    None   0.0  0.0
2014-02-21 22:12:30  0.0       1  0.0       1  ...  1015.0    None   0.0  0.0
2014-02-21 22:17:30  0.0       1  0.0       1  ...  1015.0    None   0.0  0.0
2014-02-21 22:22:30  0.0       1  0.0       1  ...  1015.0    None   0.0  0.0
2014-02-21 22:27:30  0.0       1  0.0       1  ...  1015.0    None   0.0  0.0

现在,我能画出一个情节,但速度很慢。有没有更快的方法来得到结果?在

这是我的密码。在

^{pr2}$

diurnal profiles by month


Tags: 数据nonedataframepandasdatetime图表gh曲线
1条回答
网友
1楼 · 发布于 2024-09-30 18:15:13

如果您只对绘制平均值感兴趣,请尝试使用df.groupby('Time').mean(),而不是{}。^{}将计算一堆其他统计信息,看起来您没有使用这些统计信息。在

另外,pandas的一个很好的特性是DateTimeIndex具有月份或时间等属性,因此

dataframe['Month'] = dataframe.index.map(lambda x: x.strftime("%m"))
dataframe['Time'] = dataframe.index.map(lambda x: x.strftime("%H:%M"))

你可以简单地

^{pr2}$

请参阅^{}的文档以查看其他属性。在

相关问题 更多 >