2015-04-01 64 views
0

我是熊貓新手,但現在已經使用python幾年了。如何按日分組計算每小時數據並只計算大於熊貓數量的值?

我有一個多列數據的小時數據集。我需要按日對數據進行分組,然後統計每列中每天的值超過85次的次數。

示例數據:

date      KMRY KSNS PCEC1 KFAT           
2014-06-06 13:00:00 56.000000 63.0  17 11 
2014-06-06 14:00:00 58.000000 61.0  17 11 
2014-06-06 15:00:00 63.000000 63.0  16 10 
2014-06-06 16:00:00 67.000000 65.0  12 11 
2014-06-06 17:00:00 67.000000 67.0  10 13 
2014-06-06 18:00:00 72.000000 75.0  9 14 
2014-06-06 19:00:00 77.000000 79.0  9 15 
2014-06-06 20:00:00 84.000000 81.0  9 23 
2014-06-06 21:00:00 81.000000 86.0  12 31 
2014-06-06 22:00:00 84.000000 84.0  13 28 
2014-06-06 23:00:00 83.000000 86.0  15 34 
2014-06-07 00:00:00 84.000000 86.0  16 36 
2014-06-07 01:00:00 86.000000 89.0  17 43 
2014-06-07 02:00:00 86.000000 89.0  20 44 
2014-06-07 03:00:00 89.000000 89.0  22 49 
2014-06-07 04:00:00 86.000000 86.0  22 51 
2014-06-07 05:00:00 86.000000 89.0  21 53 

從上面我的結果樣品看起來應該像下面這樣:

date   KMRY KSNS PCEC1 KFAT 
2014-06-06  0  2  0  0  
2014-06-07  5  6  0  0 

你不勝感激任何幫助。

(D_RH>85).sum() 

上面的代碼讓我接近,但我需要一個日常分解也不只是列數。

回答

1

一種方法是使date一個DatetimeIndex然後GROUPBY的比較85.示例的結果:

>>> df["date"] = pd.to_datetime(df["date"]) # only if it isn't already 
>>> df = df.set_index("date") 
>>> (df > 85).groupby(df.index.date).sum() 
      KMRY KSNS PCEC1 KFAT 
2014-06-06  0  2  0  0 
2014-06-07  5  6  0  0 
+0

非常感謝您的幫助。我把日期設置爲索引已經最後一部分是我需要的。 – CRogers 2015-04-02 02:18:59