我剛剛發現熊貓的動力,我喜歡它,但我無法弄清楚這個問題:分組熊貓數據幀由n天開始當天的開頭
我有一個數據幀df.head()
:
lon lat h filename time
0 19.961216 80.617627 -0.077165 60048 2002-05-15 12:59:31.717467
1 19.923916 80.614847 -0.018689 60048 2002-05-15 12:59:31.831467
2 19.849396 80.609257 -0.089205 60048 2002-05-15 12:59:32.059467
3 19.830776 80.607857 0.076485 60048 2002-05-15 12:59:32.116467
4 19.570708 80.588183 0.162943 60048 2002-05-15 12:59:32.888467
我想我的組數據爲九個天的間隔
gb = df.groupby(pd.TimeGrouper(key='time', freq='9D'))
第一組:
2002-05-15 12:59:31.717467 lon lat h filename time
0 19.961216 80.617627 -0.077165 60048 2002-05-15 12:59:31.717467
1 19.923916 80.614847 -0.018689 60048 2002-05-15 12:59:31.831467
2 19.849396 80.609257 -0.089205 60048 2002-05-15 12:59:32.059467
3 19.830776 80.607857 0.076485 60048 2002-05-15 12:59:32.116467
...
下一組:(:59:31.717467 12)從一天的開始,而不是因爲我想
2002-05-24 12:59:31.717467 lon lat height filename time
815 18.309498 80.457024 0.187387 60309 2002-05-24 16:35:39.553563
816 18.291458 80.458514 0.061446 60309 2002-05-24 16:35:39.610563
817 18.273408 80.460014 0.129255 60309 2002-05-24 16:35:39.667563
818 18.255358 80.461504 0.046761 60309 2002-05-24 16:35:39.724563
...
所以數據九天從第一計時分組。
當以一天分組:
gb = df.groupby(pd.TimeGrouper(key='time', freq='D'))
給我:
2002-05-15 00:00:00 lon lat h filename time
0 19.961216 80.617627 -0.077165 60048 2002-05-15 12:59:31.717467
1 19.923916 80.614847 -0.018689 60048 2002-05-15 12:59:31.831467
2 19.849396 80.609257 -0.089205 60048 2002-05-15 12:59:32.059467
3 19.830776 80.607857 0.076485 60048 2002-05-15 12:59:32.116467
...
我就可以在幾天循環,直到我得到一個九天的間隔,但我認爲它可以做更聰明,我正在尋找相當於YS(年初)的Grouper freq
選項,只需幾天,設置開始時間的一種方法(可能通過Grouper選項convention : {‘start’, ‘end’, ‘e’, ‘s’}
),或者?
我運行的Python 3.5.2和熊貓是在版本:0.19.0
[這個答案](http://stackoverflow.com/a/22528074/754456)建議添加參數'閉合='left''可能做到這一點? – mfitzp
我試過了,但沒有改變什麼 – user1643523
'convention ='s''做了什麼嗎?文檔嚴重缺乏'TimeGrouper'的參數。 – mfitzp