簡體   English   中英

關於重采樣數據幀時偏移的問題

[英]Question on offsetting when resampling a dataframe

我正在嘗試每 3 小時重新采樣一次數據集,偏移量為 1 小時。 當我嘗試時,時間偏移 1 小時,並根據需要每 3 小時設置一次,但這些值僅重新采樣,不考慮偏移

我的嘗試看起來像這樣

df = pd.read_excel('Raw Data.xlsx')
df['TIME'] = pd.to_datetime(df['TIME'])
df['DATA'] = df['DATA'].astype(float) * 1000
hourly = df.resample('H', on='TIME').mean()
thirdly = df.resample('3H', loffset = '1H', on='TIME').mean()

如圖所示,我已經能夠進行每小時設置,但是當我嘗試使用偏移量創建 3 小時重新采樣時,我得到了這個結果

                    DATA
TIME    
2019-07-29 22:00:00 10.777778
2019-07-30 01:00:00 14.055556
2019-07-30 04:00:00 13.333333
2019-07-30 07:00:00 8.722222
2019-07-30 10:00:00 7.333333
...

當我的原始數據看起來像這樣

TIME    DATA
0   2019-07-29 22:33:34 11.0
1   2019-07-29 22:43:34 10.0
2   2019-07-29 22:53:34 10.0
3   2019-07-29 23:03:34 10.0
4   2019-07-29 23:13:34 10.0
5   2019-07-29 23:23:34 11.0
6   2019-07-29 23:33:34 11.0
7   2019-07-29 23:43:34 12.0
8   2019-07-29 23:53:34 12.0
9   2019-07-30 00:03:34 11.0
10  2019-07-30 00:13:34 12.0
11  2019-07-30 00:23:34 13.0
12  2019-07-30 00:33:34 13.0
13  2019-07-30 00:43:34 14.0
14  2019-07-30 00:53:34 14.0
...

當您手動計算時,您可以看到它所取的平均值實際上是從 21:00-24:00 而不是 22:00-1:00,盡管我在重新采樣中進行了偏移,但它顯示出來。 我該如何糾正?

您需要使用參數base而不是loffset只調整標簽。

嘗試:

thirdly = df.resample('3H', base = 1, on='TIME').mean()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM