Изменить строку на дату и время с PM / AM - PullRequest
1 голос
/ 14 мая 2019

У меня есть столбец фрейма данных pandas в следующем формате: 30-APR-19 09.47.43.019000 PM, и я хочу преобразовать его в формат Datetime следующего типа: 30-APR-19 21.47.43.019000

Пока я использую следующий код: df['DateTime']=pd.to_datetime(df['DialogDateTime'],format='%d-%b-%y %H.%M.%S.%f %p') но не работает.Более того, я также попробовал следующее: df['DateTime']=pd.to_datetime(df['DialogDateTime'],format='%d-%b-%y %H.%M.%S.%f %p').dt.strftime(date_format='%H.%M.%S.%f') также безуспешно.Любая помощь?Спасибо.

1 Ответ

3 голосов
/ 14 мая 2019

Используйте %I для часов матча:

df = pd.DataFrame({'DialogDateTime':['30-APR-19 09.47.43.019000 PM',
                                     '30-APR-19 10.47.43.019000 PM']})
df['DateTime'] = (pd.to_datetime(df['DialogDateTime'],format='%d-%b-%y %I.%M.%S.%f %p')
                  .dt.strftime(date_format='%d-%b-%y %H.%M.%S.%f %p') )
print (df)
                 DialogDateTime                      DateTime
0  30-APR-19 09.47.43.019000 PM  30-Apr-19 21.47.43.019000 PM
1  30-APR-19 10.47.43.019000 PM  30-Apr-19 22.47.43.019000 PM
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...