Mon dataframe pandas est constitué d'une colonne "timeStamp", dont les éléments sont de type datetime.datetime. J'essaie d'obtenir la différence entre deux lignes consécutives de cette colonne pour obtenir le temps passé en secondes. J'utilise pour cela le morceau de code suivant.
df["Time"] = df["timeStamp"].diff(0).dt.total_seconds()
En général, cela fonctionne bien, mais je continue à obtenir 0.0 comme résultat de cette opération dans un certain nombre de cas, même lorsque ce n'est pas le cas.
Exemples de valeurs qui donnent 0,0 :
import pandas as pd
import datetime
import numpy as np
df = pd.DataFrame({'S.No.': [1, 2, 3, 4], 'ABC': [datetime.datetime(2019,2,25,11,49,50), datetime.datetime(2019,2,25,11,50,0),datetime.datetime(2019,2,25,11,50,7),datetime.datetime(2019,2,25,11,50,12)]})
df["Time"] = df["ABC"].diff(0).dt.seconds
print df
Remarque : utilisation de python2.7