Можете ли вы передать аргумент format
в pandas.to_datetime()
? Что-то вроде: pandas.to_datetime(date_column, format='%d%b%Y')
Если вы можете получить даты в виде строк, то любая функция синтаксического анализа даты, которая принимает форматирование strptime
, должна работать с шаблоном %d%b%Y
:
>>> datetime.datetime.strptime('12FEB1993', '%d%b%Y')
datetime.datetime(1993, 2, 12, 0, 0)
EDIT:
Похоже, что pandas.to_datetime()
приводит к pandas.Timestamp
объектам, которые из-за пределов разрешения ограничены ~ 584 годами, или максимальным годом 2262.
Поскольку у вас есть строка даты, которая выходит за рамки этого, вы можете прочитать столбец как строку, а затем вызвать apply
, чтобы преобразовать значения в date
объекты:
import datetime
my_df['date'] = my_df['date_text'].apply(lambda x: datetime.datetime.strptime(x, '%d%b%Y').date())