2017-07-14 31 views
1

我有一個像下面這樣的熊貓數據框。計算熊貓數據框中兩列之間的時間差(以秒爲單位)

CID  T1     Name  T2      delta 
101 1900-01-01 12:31:58.193 Tom  1900-01-01 12:31:57.193 00:00:01.000 
102 1900-01-01 12:31:57.193 John 1900-01-01 12:31:57.193 00:00:00.000 
103 1900-01-01 12:44:03.098 Mary 1900-01-01 12:34:31.956 -1days+23:50:28.858000 
104 1900-01-01 12:44:03.111 Rocky 1900-01-01 12:31:57.172 -1days+23:47:54.061000 

我想計算時間差最高的時間值和減少與較低的時間值。

i.e if t2 > t1 : 
    delta = t2 -t1 
else: if t1>t2 : 
delta = t1 -t2 

此外,我希望增量值,即時間差,以秒爲單位。

預期輸出:

CID  T1     Name T2      delta 
101 1900-01-01 12:31:58.193 Tom 1900-01-01 12:31:57.193 60s 
102 1900-01-01 12:31:57.193 John 1900-01-01 12:31:57.193 0s 
103 1900-01-01 12:44:03.098 Mary 1900-01-01 12:34:31.956 ~600s 
104 1900-01-01 12:44:03.111 Rocky 1900-01-01 12:31:57.172 ~700s 

回答

0

使用上datetime列

In [877]: (df.T1 - df.T2).abs().dt.total_seconds() 
Out[877]: 
0  1.000 
1  0.000 
2 571.142 
3 725.939 
dtype: float64 
+0

完美的絕對差值.dt.total_seconds()! @John Galt – user3484464

相關問題