gpt4 book ai didi

python - 减去 Pandas 列中的时间

转载 作者:行者123 更新时间:2023-12-01 09:05:22 26 4
gpt4 key购买 nike

我一直在尝试使用 pandas dataframe 减去我读入 python 的列之间的日期和时间。我写的代码如下:

Time = df['t'] - df['t'].shift(1) + df['t']

这会导致错误消息。我的输入和预期输出如下所述

Input data:
t =
9:47:00
9:48:00
9:49:00
9:50:00
9:51:00
9:52:00
9:53:00
9:54:00

我希望代码能够生成输出数据(从零开始的累积小时。

0
0.016666667
0.033333333
0.05
0.066666667
0.083333333
0.1

我还尝试使用 datetime.strptime('t',"%H:%M:%S.%f") 将其转换为字符串,但仍然收到错误。

如有任何建议,我们将不胜感激。

最佳答案

与克里斯的解决方案类似。您应该从一开始就使用 timedelta 以获得更简单的解决方案。

v = pd.to_timedelta(df['t'])
((v - v.shift())).dt.total_seconds().cumsum().div(3600).fillna(0)

0 0.000000
1 0.016667
2 0.033333
3 0.050000
4 0.066667
5 0.083333
6 0.100000
7 0.116667
Name: t, dtype: float64

关于python - 减去 Pandas 列中的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52105810/

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