![](/img/trans.png)
[英]Plot subplots of different hourly time series: plot daily average on each hourly subplots
[英]Plot each day as a time serie on a hourly basis
我有一個時間序列數據框(df),其中包含幾天的變量 y 信息(每小時注冊一次):
> df.head()
Date y
1 2019-10-03 00:00:00 33
2 2019-10-03 01:00:00 10
3 2019-10-03 02:00:00 39
4 2019-10-03 03:00:00 60
5 2019-10-03 04:00:00 21
我想每天將 plot 作為單個時間序列,x 軸是小時,即我想每小時(獨立地)查看每天的 y。 如果我有 N 天,我想查看樣本 plot 上的 N 個時間序列,變量 y 在 y 軸上,小時在 x 軸上。 這可能嗎?
如果每天對我的數據進行分組,我會因為總和 function 而丟失小時信息:
> df_day = df.groupby(pd.Grouper(key='Date',freq='1D')).sum()
Date y
0 2019-10-03 800
1 2019-10-04 899
2 2019-10-05 1020
3 2019-10-06 544
4 2019-10-07 321
使用DataFrame.groupby
與日期和時間,聚合總和並通過Series.unstack
重塑:
df['Date'] = pd.to_datetime(df['Date'])
df_day = (df.groupby([df['Date'].dt.date, df['Date'].dt.hour])['y']
.sum()
.unstack(fill_value=0))
print (df_day)
Date 0 1 2 3 4
Date
2019-10-03 33 10 39 60 21
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.