В настоящее время я создаю программу для отслеживания входа / выхода в систему, данные экспортируются в виде строки типа «5:00 AM», я использую следующий код для преобразования данных из строки в datetime64 [ns]
df = pd.DataFrame({ 'LoginTime' : ["10:00PM", "5:00AM", "11:00PM","7:00AM"],
'Logout Time' : ["6:00AM","2:00PM", "5:00AM", "5:00PM"]})
for c in df.columns:
if c == 'LoginTime':
df['LoginTime'] = pd.to_datetime(df['LoginTime'], format='%I:%M%p')
elif c == 'Logout Time':
df['Logout Time'] = pd.to_datetime(df['Logout Time'], format='%I:%M%p')
Результат будет следующим:
LoginTime Logout Time
0 1900-01-01 22:00:00 1900-01-01 06:00:00
1 1900-01-01 05:00:00 1900-01-01 14:00:00
2 1900-01-01 23:00:00 1900-01-01 05:00:00
3 1900-01-01 07:00:00 1900-01-01 17:00:00
LoginTime datetime64[ns]
Logout Time datetime64[ns]
Код работает, как ожидалось, и изменил строку на формат времени, однако я заметил, что формат - 01.01.1900, 22:00:00, я хотел бы знать, есть ли способ получить только время, подобное это 10:00:00 без указания типа данных как datetime64 [нс], так как я должен создать проверку для входа / выхода в систему
Заранее спасибо