簡體   English   中英

python中的聚合時間序列

[英]Aggregate time series in python

我們如何按小時或精細粒度匯總時間序列? 如果我有如下的時間序列,那么我希望按小時聚合值。 大熊貓是否支持它,或者在python中有一種漂亮的方式嗎?

timestamp, value
2012-04-30T22:25:31+00:00, 1
2012-04-30T22:25:43+00:00, 1
2012-04-30T22:29:04+00:00, 2
2012-04-30T22:35:09+00:00, 4
2012-04-30T22:39:28+00:00, 1
2012-04-30T22:47:54+00:00, 8
2012-04-30T22:50:49+00:00, 9
2012-04-30T22:51:57+00:00, 1
2012-04-30T22:54:50+00:00, 1
2012-04-30T22:57:22+00:00, 0
2012-04-30T22:58:38+00:00, 7
2012-04-30T23:05:21+00:00, 1
2012-04-30T23:08:56+00:00, 1

我還嘗試通過調用以確保我的數據框中有正確的數據類型:

  print data_frame.dtypes

我得到以下內容

ts     datetime64[ns]
val             int64

當我在數據框上調用group by時

grouped = data_frame.groupby(lambda x: x.minute)

我收到以下錯誤:

grouped = data_frame.groupby(lambda x: x.minute)
AttributeError: 'int' object has no attribute 'minute'

http://pandas.pydata.org/pandas-docs/dev/generated/pandas.DataFrame.resample.html DataFrame.resample方法。 您可以在此處指定聚合方式,在您的情況下為sum

data_frame.resample("1Min", how="sum")

http://pandas.pydata.org/pandas-docs/dev/timeseries.html#up-and-downsampling

暫無
暫無

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

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