将连续时差(timedelta)转换为秒

时间:2015-10-31 19:23:48

标签: python pandas datetime dataframe timedelta

我使用以下方法计算了d的数据框中的连续时差:

d['delta'] = (d['time'] - d['time'].shift()).fillna(0)

所以我在'delta'中有时差。柱。我的问题是如何将其转换为秒?输出的格式为00:50:00,我想将其转换为3000秒。

1 个答案:

答案 0 :(得分:4)

您的列属于timedelta64类型,因此您可以使用.dt访问者来查找seconds属性:

d['delta'].dt.seconds

可以找到有关.dt访问者的更多信息here

正如@Jeff在评论中指出的那样,使用total_seconds()代替seconds可能会更好;后者仅返回整数(整数)秒数(模数 1天== 86400秒),而前者将返回浮点值,计算较小的时间单位(ms,ns)以及天数价值:

d['delta'].dt.total_seconds()