gpt4 book ai didi

python - 如何使用 timedelta 从 pandas 系列中选择最后一个值?

转载 作者:行者123 更新时间:2023-12-04 15:35:31 24 4
gpt4 key购买 nike

我有一个 pandas 系列,时间戳作为索引, float 作为值

pd.Series(
data=[150.0, 151.0, ...],
index=[
datetime.datetime(2020, 1, 24, 15, 53, 54, 532325, tzinfo=None, fold=0),
datetime.datetime(2020, 1, 24, 16, 1, 7, 896288, tzinfo=None, fold=0),
...]
)

导致:

2020-01-24T15:53:54.532325    150.0
2020-01-24T16:01:07.896288 151.0
2020-01-24T16:01:10.862610 152.0
2020-01-24T16:01:13.407573 149.0
2020-01-24T16:33:59.985246 148.0
2020-01-24T16:34:06.411970 150.0

我如何通过 timedelta w.r.t. 选择最后一个值及其对应的索引?以秒为单位的最新 timedelta 值?例如给定的系列和 2 秒的时间增量我希望系列的子集

2020-01-24T16:33:59.985246    148.0
2020-01-24T16:34:06.411970 150.0

这应该等同于我应该通过 timestamped_intensity['2020-01-24T16:33:59.9852462':'2020-01-24T16:34:06.411970'] 通过 indexing by time 获得的结果.

最佳答案

更新

按元素 Series.sort_index

s.sort_index().tail(2)

#date
#2020-01-24 16:33:59.985246 148.0
#2020-01-24 16:34:06.411970 150.0
#Name: value, dtype: float64

以秒为单位

我们计算的是index和index的时间差,当cumulative sum和semnor为2

n = 2
s[s.sort_index(ascending = False)
.index
.to_series()
.diff().abs()
.dt.total_seconds()
.cumsum()
.fillna(0)
.lt(n)]

关于python - 如何使用 timedelta 从 pandas 系列中选择最后一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59899694/

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