如何从每小时数据集中找出每天的最大值和最小值

时间:2016-11-09 06:09:53

标签: python pandas max min resampling

这是2年的每小时数据,我需要每日数据的最大值和最小值,我该如何找到?

<

1 个答案:

答案 0 :(得分:1)

您可以将resampleResampler.aggregate minmax一起使用:

print (df)
                     value
record ts                 
2014-01-01 00:00:00   5.83
2014-01-01 01:00:00   5.38
2014-01-01 02:00:00   4.80
2014-01-01 03:00:00   3.81
2014-01-02 04:00:00   4.46
2014-01-02 05:00:00   5.04
2014-01-02 06:00:00   5.76
2014-01-03 07:00:00   6.15
2014-01-03 08:00:00   6.66
2014-01-03 09:00:00   7.02
2014-01-03 10:00:00   7.43
2014-01-04 11:00:00   7.34
2014-01-04 12:00:00   7.24
2014-01-04 13:00:00   7.71
2014-01-05 14:00:00   8.89
2014-01-05 15:00:00  10.31

#if not DatetimeIndex
df.index = pd.to_datetime(df.index)
print (df.resample('D')['value'].agg(['min', 'max']))
             min    max
record ts              
2014-01-01  3.81   5.83
2014-01-02  4.46   5.76
2014-01-03  6.15   7.43
2014-01-04  7.24   7.71
2014-01-05  8.89  10.31

另一种解决方案:

print (df.groupby(pd.TimeGrouper('D'))['value'].agg(['min', 'max']))
             min    max
record ts              
2014-01-01  3.81   5.83
2014-01-02  4.46   5.76
2014-01-03  6.15   7.43
2014-01-04  7.24   7.71
2014-01-05  8.89  10.31

* piRSquared编辑,谢谢*

<强> 定时
enter image description here