gpt4 book ai didi

python - 如何过滤数据帧的最后 8 小时?

转载 作者:行者123 更新时间:2023-12-02 03:47:29 24 4
gpt4 key购买 nike

我正在尝试从数据框中获取最后 8 小时的数据。有什么办法可以实现这一点吗?

假设我有一个带有时间戳的数据帧:

Time                  X      Y
19/8/2017 10:00:00 824.93 6.42
19/8/2017 10:20:00 825.88 6.41
19/8/2017 10:40:00 825.59 6.45
19/8/2017 11:00:00 826.18 6.6
19/8/2017 11:20:00 825.2 6.62
19/8/2017 11:40:00 825.3 6.65
19/8/2017 12:00:00 824.72 6.54
19/8/2017 12:20:00 825.72 6.45
19/8/2017 12:40:00 824.99 6.35
19/8/2017 13:00:00 824.63 6.31
19/8/2017 13:20:00 825.87 6.34
19/8/2017 13:40:00 826.12 6.29
19/8/2017 14:00:00 825.41 6.31
19/8/2017 14:20:00 825.34 6.36
19/8/2017 14:40:00 825.15 6.39
19/8/2017 15:00:00 824.87 6.15
19/8/2017 15:20:00 825.57 6.17
19/8/2017 15:40:00 825.35 6.2
19/8/2017 16:00:00 824.94 6.26
19/8/2017 16:20:00 825.86 6.39
19/8/2017 16:40:00 824.74 6.39
19/8/2017 17:00:00 823.46 6.33
19/8/2017 17:20:00 824.46 6.41
19/8/2017 17:40:00 824.67 6.4
19/8/2017 18:00:00 824.38 6.36
19/8/2017 18:20:00 825.23 6.37
19/8/2017 18:40:00 826.09 6.37
19/8/2017 19:00:00 824.77 6.32
19/8/2017 19:20:00 824.18 6.34
19/8/2017 19:40:00 823.82 6.33
19/8/2017 20:00:00 825 6.39
19/8/2017 20:20:00 825.01 6.4
19/8/2017 20:40:00 824.24 6.45
19/8/2017 21:00:00 817.65 6.17
19/8/2017 21:20:00 781.58 4.92
19/8/2017 21:40:00 739.89 3.51

我想从此数据框中提取过去 8 小时的数据。

我尝试了这个,但我无能为力:

last8 = (df["Time"] == (dfs["Time"].shift() + Timedelta(hours = 8))).cumsum()

如有任何帮助,我们将不胜感激。

最佳答案

从最长时间开始获取最后 8 小时(本例中为最后一次)

In [2178]: df[df['Time'] > df['Time'].max() - pd.Timedelta(hours=8)]
Out[2178]:
Time X Y
12 2017-08-19 14:00:00 825.41 6.31
13 2017-08-19 14:20:00 825.34 6.36
14 2017-08-19 14:40:00 825.15 6.39
15 2017-08-19 15:00:00 824.87 6.15
16 2017-08-19 15:20:00 825.57 6.17
17 2017-08-19 15:40:00 825.35 6.20
18 2017-08-19 16:00:00 824.94 6.26
19 2017-08-19 16:20:00 825.86 6.39
20 2017-08-19 16:40:00 824.74 6.39
21 2017-08-19 17:00:00 823.46 6.33
22 2017-08-19 17:20:00 824.46 6.41
23 2017-08-19 17:40:00 824.67 6.40
24 2017-08-19 18:00:00 824.38 6.36
25 2017-08-19 18:20:00 825.23 6.37
26 2017-08-19 18:40:00 826.09 6.37
27 2017-08-19 19:00:00 824.77 6.32
28 2017-08-19 19:20:00 824.18 6.34
29 2017-08-19 19:40:00 823.82 6.33
30 2017-08-19 20:00:00 825.00 6.39
31 2017-08-19 20:20:00 825.01 6.40
32 2017-08-19 20:40:00 824.24 6.45
33 2017-08-19 21:00:00 817.65 6.17
34 2017-08-19 21:20:00 781.58 4.92
35 2017-08-19 21:40:00 739.89 3.51

关于python - 如何过滤数据帧的最后 8 小时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46343011/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com