Я создал фрейм данных в пандах, который показывает расчеты общего времени, затраченного на выполнение рабочего задания.Из-за ошибки, связанной с вводом данных человеком, некоторые временные вычисления выглядят как отрицательное время, как вы можете видеть в строке 30, даже если я поменяю местами на PM, это все равно даст ложное время, так как время работы между 07:30 - 16:00,было бы лучше просто игнорировать эти времена
Work Order WorkType AST AFT comp_time
10 BAEBRO-898690 RM 1900-01-01 06:27:41 1900-01-01 08:05:28 01:37:47
13 BAEBRO-914693 RM 1900-01-01 08:30:00 1900-01-01 09:00:00 00:30:00
27 BAEBRO-898787 RM 1900-01-01 10:00:00 1900-01-01 10:30:00 00:30:00
30 BAEBRO-914680 RM 1900-01-01 14:32:08 1900-01-01 10:37:17 -1 days +20:05:09
37 BAEBRO-914660 RM 1900-01-01 10:47:39 1900-01-01 11:32:02 00:44:23`
мой код для получения этого результата:
import pandas as pd
from datetime import time
from datetime import timedelta
from pandas import DataFrame
import matplotlib as plt
df = pd.read_excel('C:/Users/Nativ_Zero/Desktop/work data/July.xls')
df_work = df[['Work Order', 'WorkType', 'AST','AFT']]
df_work['AFT'] = pd.to_datetime(df_work['AFT'], format='%H:%M:%S', errors='coerce')
df_work['AST'] = pd.to_datetime(df_work['AST'], format='%H:%M:%S', errors='coerce')
rm_work = df_work[df_work.WorkType == 'RM']
rm_work['comp_time'] = rm_work['AFT'] - rm_work['AST']
rm_work.head()