gpt4 book ai didi

python - 如何从 Pandas 中的 DatetimeIndex 获取滚动窗口内的持续时间

转载 作者:行者123 更新时间:2023-11-28 22:24:43 28 4
gpt4 key购买 nike

我正在尝试为此数据计算每个滑动窗口内的持续时间:

                                ID  
DATE
2017-05-17 15:49:51 2
2017-05-17 15:49:52 5
2017-05-17 15:49:55 2
2017-05-17 15:49:56 3
2017-05-17 15:49:58 5
2017-05-17 15:49:59 5

在此示例中,DATE 是索引,我试图获取大小为 3 且彼此重叠的滚动窗口内的持续时间。答案应该是这样的:

                                ID      duration    
DATE
2017-05-17 15:49:51 2 4
2017-05-17 15:49:52 5 4
2017-05-17 15:49:55 2 3
2017-05-17 15:49:56 3 3
2017-05-17 15:49:58 5 NaN
2017-05-17 15:49:59 5 NaN

我试过:

df['duration'] = df.rolling(window=3).apply(df.index.max()-df.index.min())

但是我得到了这个错误:

TypeError: 'DatetimeIndex' object is not callable

最佳答案

df.reset_index(inplace=True)    
df['PREVIOUS_TIME']= df.DATE.shift(-2)
df['duration']=(df.PREVIOUS_TIME-df.DATE)/np.timedelta64(1,'s')
df.drop('PREVIOUS_TIME',axis=1,inplace=True)
df.set_index('DATE',inplace=True)

假设“DATE”是一个日期时间。

关于python - 如何从 Pandas 中的 DatetimeIndex 获取滚动窗口内的持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46151507/

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