如何检索时序数据的最小值和最大值



我想使用 matplotlib 在我的时间序列数据的最小值和最大值之间进行着色。下面是一个数据示例。如何检索最小值和最大值(请注意,下面给出的时间是字符串格式,但我有前一天 00:00:00 的时间,以秒为单位,所以我的时间为 5902761,5902770(

例如

index       time            value
   1    08:00:00         100
   2    08:00:01         100
   3    08:00:01         101
   4    08:00:02         100
   5    08:00:02         102
   6    08:00:02         101

我想要的是以下内容

index       time        min_value   max_value
   1      08:00:00         100         100
   2      08:00:01         100         101
   3      08:00:02         100         102

aggregaterename一起使用:

d = {'min':'min_value','max':'max_value'}
df = df.groupby('time')['value'].agg([min, max]).reset_index().rename(columns=d)
print (df)
       time  min_value  max_value
0  08:00:00        100        100
1  08:00:01        100        101
2  08:00:02        100        102

因为:

df = df.groupby('time')['value'].agg({'min_value':'min','max_value':'max'})

未来警告:对序列使用字典进行聚合 已弃用,并将在未来版本中删除 df = df.groupby('time'(['value'].agg({'min':'min_value','max':'max_value'}(

最新更新