Olá Luciana! Tudo certinho?
Peço desculpas pela demora em te dar um retorno.
Utilizando o seu dataframe eu consegui calcular a diferença entre a data de destino e de origem da seguinte forma:
tempo_destino = [hora for hora in dados['Tempo_destino']] # armazenando os dados da coluna Tempo_destino em uma lista
tempo_origem = [hora for hora in dados['Tempo_origem']] # armazenando os dados da coluna Tempo_origem em uma lista
format = '%H:%M:%S' # definindo o formato das horas (hora-minuto-segundo)
duracao = [] # criando uma lista para armazenar a duração
for i in range(dados.shape[0]):
# fazendo a diferença das horas de destino e origem e salvando na lista duracao
duracao.append((datetime.strptime(tempo_destino[i], format) - datetime.strptime(tempo_origem[i], format)))
# criando uma coluna chamada "Duração" e salvando os dados da lista duracao nela
dados['Duração'] = duracao
dados
O código está comentado explicando cada etapa com maior detalhes. Mas, primeiramente eu salvei os dados das colunas Tempo_origem e Tempo_destino em listas separadas. Depois, o que eu fiz foi criar um laço for que percorria a quantidade de linhas do seu dataframe e nesse laço, por meio do método strptime
da biblioteca datetime
eu realizei a conversão de cada uma das suas datas para o tipo datetime, para que assim, fosse possível obter a diferença na quantidade de horas-minutos-segundos.
Após salvar essa diferença em uma lista, foi criada uma coluna chamada "Duração" e os valores da lista foram passado para essa coluna, resultando no seguinte dataframe:
Qualquer dúvida estou a disposição :)
Bons estudos!