gpt4 book ai didi

python - 当时间序列中的下一个值较大时过滤数据

转载 作者:行者123 更新时间:2023-12-01 09:10:39 25 4
gpt4 key购买 nike

我正在尝试对数据框进行子集化,如下所示:-

如果数据帧的“time_col”列中的条目如下:

# 00:00:00, 00:10:00,16:14:00, 22:59:00, 01:00:00, 04:14:00, 08:18:00, 18:18:00

然后我们需要创建2个数据框,因为上面的时间代表2 个不同的日子。

# data_frame_1 -> 00:00:00, 00:10:00,16:14:00, 22:59:00
# data_frame_2 -> 01:00:00, 04:14:00, 08:18:00, 18:18:00

我有一个时间序列数据和按顺序排列的时间,但在时间 23:59:00 之后又从 00:00:00 开始,但那是第二天的时间。

------------------------------------------------------------ -------------------------------------------

简单来说,如果 df 中的列具有如下所示的值,并且最低和最高值为 0 和 9:-

#1,2,3,4,5,6,7,8,9,4,5,6,7,8,1,2,4,5,8

所以,我想将 df 过滤到下面的多个数据帧中,例如:-

#df1<- 1,2,3,4,5,6,7,8,9
#df2<- 4,5,6,7,8
#df3<- 1,2,4,5,8

我想让这个动态化。我的意思是,如果有 3 天或 30 天,这两种情况都应该有效。

最佳答案

IIUC

s=pd.Series([1,2,3,4,5,6,7,8,9,4,5,6,7,8,1,2,4,5,8])
s.groupby(s.diff().lt(0).cumsum()).apply(list)
Out[115]:
0 [1, 2, 3, 4, 5, 6, 7, 8, 9]
1 [4, 5, 6, 7, 8]
2 [1, 2, 4, 5, 8]
dtype: object

关于python - 当时间序列中的下一个值较大时过滤数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51677784/

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