查找时间范围内的最高和最低值

时间:2019-07-05 23:11:00

标签: python python-3.x pandas dataframe

(Not a duplicate question)

我有以下具有Gmt timeOpen值的数据集

Gmt time, Open
2018-01-01 00:00:00,2.7321
2018-01-01 00:01:00,2.7323
2018-01-01 00:02:00,2.7322
2018-01-01 00:03:00,2.7321
2018-01-01 00:04:00,2.7323
2018-01-01 00:05:00,2.7325
2018-01-01 00:06:00,2.7322
...., ....
2018-12-31 23:59:00,3.1463

Gmt timeDateTime,上面给出了yyyy-mm-dd hh:mm:ss。 您可以看到每个数据点相隔1 minute

我想查找每一天(24小时时间段)的最高Open值和最低Open值。例如:2018-01-01 00:00:002018-01-01 23:59:00

我的新DataFrame应该看起来像这样:

Gmt time, Open-high, Open-Low
2018-01-01 ,2.7321, ,2.7321
2018-01-02 ,2.7321, ,2.7321
2018-01-03 ,2.7321, ,2.7321
...., ...., ...., ....
2018-12-31 ,2.7321, ,2.7321

您能告诉我如何在熊猫中做到这一点吗?

1 个答案:

答案 0 :(得分:2)

如果不是dup,我会感到惊讶:

df.groupby(df['Gmt time'].dt.floor('D')).Open.agg(['min','max']).reset_index()

输出:

    Gmt time     min     max
0 2018-01-01  2.7321  2.7325
1 2018-12-31  3.1463  3.1463