У меня есть код, написанный на данный момент для изменения двух столбцов моего информационного кадра из строк в объекты datetime.datetime, подобные следующим:
def converter(date):
date = dt.strptime(date, '%m/%d/%Y %H:%M:%S')
return date
df = pd.DataFrame({'A':['12/31/9999 0:00:00','1/1/2018 0:00:00'],
'B':['4/1/2015 0:00:00','11/1/2014 0:00:00']})
df['A'] = df['A'].apply(converter)
df['B'] = df['B'].apply(converter)
Когда я запускаю этот код и печатаю информационный кадр, он приходитвот так
A B
0 9999-12-31 00:00:00 2015-04-01
1 2018-01-01 00:00:00 2014-11-01
Когда я проверял типы данных каждого столбца, они читают
A object
B datetime64[ns]
Но когда я проверяю формат фактических ячеек первой строки, они читают
<class 'datetime.datetime'>
<class 'pandas._libs.tslib.Timestamp'>
После экспериментов, я думаю, что я столкнулся с ошибкой за пределами границ из-за даты '12 / 31/9999 0:00:00 'в столбце' A ', и это вызываетэтот столбец будет приведен как объект datetime.datetime.У меня вопрос, как я могу также преобразовать столбец «B» моего фрейма данных в объект datetime.datetime, чтобы я мог выполнить запрос по столбцам, аналогичным
df.query('A > B')
, не получая ошибку или неправильный вывод.
Заранее спасибо