Solución:
Para calcular la diferencia, debe convertir el datetime.time
objetar a un datetime.datetime
objeto. Luego, cuando restas, obtienes un timedelta
objeto. Para saber cuántas horas timedelta
El objeto es, tienes que encontrar el total de segundos y dividirlo por 3600
.
# Create datetime objects for each time (a and b)
dateTimeA = datetime.datetime.combine(datetime.date.today(), a)
dateTimeB = datetime.datetime.combine(datetime.date.today(), b)
# Get the difference between datetimes (as timedelta)
dateTimeDifference = dateTimeA - dateTimeB
# Divide difference in seconds by number of seconds in hour (3600)
dateTimeDifferenceInHours = dateTimeDifference.total_seconds() / 3600
Asi es como lo hice
a="2200"
b = '1800'
time1 = datetime.strptime(a,"%H%M") # convert string to time
time2 = datetime.strptime(b,"%H%M")
diff = time1 -time2
diff.total_seconds()/3600 # seconds to hour
salida: 4.0
Obtuve mi resultado de este problema:
a="2017-10-10 21:25:13"
b='2017-10-02 10:56:33'
a=pd.to_datetime(a)
b=pd.to_datetime(b)
c.total_seconds()/3600
pero en series que no funcionarán:
table1['new2']=table1['new'].total_seconds()/3600
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)