В python как вычесть два столбца файла Excel, имеющих значения времени, и создать новый столбец? - PullRequest
0 голосов
/ 29 января 2020

У меня есть база данных Excel, подобная этой:

ExcelTimeData

Я хочу получить новый столбец (ResponseTime) = (EndTime-StartTime), используя python. Я использую следующий python код:

     import pandas as pd
     import numpy as np
     from matplotlib import pyplot as plt
     new = pd.read_excel("single_file.xlsx") 
     sf=pd.DataFrame(new)
     sf['Res_Time'] = sf['EndTime'] - sf['StartTime'])

это показывает мне эту ошибку:

TypeError: unsupported operand type(s) for -: 'str' and 'str'

Как вычесть значения времени в двух столбцах?

1 Ответ

0 голосов
/ 29 января 2020

Вы пытаетесь вычесть две строки, чтобы сначала работать с датами, необходимо преобразовать столбцы в дату и время, используя .to_datetime

sf['EndTime'] = pd.to_datetime(sf['EndTime'], format='%H:%M:%S')
sf['StartTime'] = pd.to_datetime(sf['StartTime'], format='%H:%M:%S')

С format, вы можно изменить синтаксический анализ строки, проверьте strftime .

...