Python:Pandas系列 - 连续日期时间行之间的差异,以秒为单位

时间:2016-08-10 02:07:13

标签: python datetime pandas difference seconds

我有一个名为'df'的熊猫系列如下

                       value    
date_time_index         
2015-10-28 01:54:00     1.0 
2015-10-28 01:55:00     1.0 
2015-10-28 01:56:00     1.0 
2015-10-28 01:57:00     1.0 
2015-10-28 01:58:00     1.0 

我只想要一个新列,连续行之间的差异以秒为单位,我该怎么做?

注意:类型是

 type(df.index[1])

给出
 pandas.tslib.Timestamp

2 个答案:

答案 0 :(得分:8)

我这样做:

df.index.to_series().diff().dt.total_seconds().fillna(0)

date_time_index
2015-10-28 01:54:00     0.0
2015-10-28 01:55:00    60.0
2015-10-28 01:56:00    60.0
2015-10-28 01:57:00    60.0
2015-10-28 01:58:00    60.0
Name: date_time_index, dtype: float64

答案 1 :(得分:2)

我想我已经使用

解决了这个问题
df['temp_index'] = df.index
df['Delta'] = df['temp_index'].diff().astype('timedelta64[m]')

以分钟而非秒(将m更改为s秒)