я хочу добавить два списка со значениями времени в строковой форме в pandas - PullRequest
0 голосов
/ 06 января 2020

Я делаю отчет в колл-центр, и я хочу преобразовать окончательное время в секунды для дальнейшего расчета

import pandas as pd
df= pd.read_csv('MY_APR.csv')

Я хочу добавить новый столбец на свой лист

df['Total Talk Time']= pd.to_timedelta(df['Total Inbound Call Talk Time']) + pd.to_timedelta(df['Total Outbound Call Talk Time'])

Мои входные данные представляют собой строки: ['02:50:15','05:10:45'.........], и вывод, который я получаю, имеет вид 0 days 06:35:49.000000000 после добавления двух ячеек, хотя сложение по времени корректно, мне не требуются дни и значения точек после времени.

1 Ответ

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

Пожалуйста, попробуйте следующий фрагмент кода, здесь я преобразовываю ваш столбец Total Talk Time в секунды, а затем анализирую в желаемый формат времени.

df['Total Talk Time']= pd.to_timedelta(df['Total Inbound Call Talk Time']).dt.seconds + pd.to_timedelta(df['Total Outbound Call Talk Time']).dt.seconds
df['Total Talk Time'] = pd.to_datetime(df['Total Talk Time'],unit='s').dt.strftime('%H:%M:%S')

Это удалит начальную часть 0 дней в значениях и сохранит только время.

...