Здесь я хочу вычислить временной интервал между строками в импорте временного столбца из CSV-файла.В моем CSV-файле он включает в себя дату и время.Здесь я хочу отобразить разницу во времени между временами в строках.Это мой ожидаемый результат.Мой код: -
def time_diff(start, end):
start.append(pd.to_datetime(data['time'][0],formt = '%H:%M:%S').time())
end.append(pd.to_datetime(len(data['time']), format='%H:%M:%S').time())
if isinstance(start, datetime_time): # convert to datetime
assert isinstance(end, datetime_time)
start, end = [datetime.combine(datetime.min,i) for t in [start, end]]
if start <= end:
return end - start
else:
end += timedelta(1) # +day
assert end > start
return end - start
for index, row in data.iterrows():
start = [datetime.strptime(t,'%H:%M:%S') for t in inex]
end = [datetime.strptime(t,'%H:%M:%S') for t in index]
print(time_diff(s, e))
assert time_diff(s, e) == time_diff(s.time(), e.time())
Мой CSV-файл: -
date time
10/3/2018 6:00:00
10/3/2018 7:00:00
10/3/2018 8:00:00
10/3/2018 9:00:00
10/3/2018 10:00:00
10/3/2018 11:00:00
10/3/2018 12:00:00
10/3/2018 13:45:00
10/3/2018 15:00:00
10/3/2018 16:00:00
10/3/2018 17:00:00
10/3/2018 18:00:00
10/3/2018 19:00:00
10/3/2018 20:00:00
10/3/2018 21:30:00
10/4/2018 6:00:00
Мой ожидаемый результат (разница во времени): -
time_diff
0
1
1
1
1
1
1
1:45
1:15
1
1
1
1
1
1:30
8:30
Это вывод, который я хочу отобразить с помощью этого кода.Но я не знаю, как перебирать строки, чтобы получить разницу во времени между двумя временами.Моя разница во времени отображается в час.