Как изменить неправильный формат даты и времени с необработанного CSV-файла на правильный формат даты и времени в Python - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть Python фрейм данных, подобный этому

Index Name Dateofbirth

0      A.     12JAN1980:00:00:00.000000
1      B.   17JUN1954:00:00:00.000000
...
1250000  X.  09DEC1957:00:00:00.0000

Проблема в том, что в файле исходных данных csv мои даты хранятся в этом формате % d% m% Y: 00 : 00: 00.000000

Итак, проблема возникает, когда я читаю этот CSV-файл в Python и преобразовываю столбец «Дата рождения» в datetime со следующим кодом

df['Dateofbirth'] =pd.to_datetime(df['Dateofbirth'])

I получить следующую ошибку:

повысить ValueError («Неизвестный формат строки:», timestr) ValueError: («Неизвестный формат строки:», 12JAN1980: 00: 00: 00.000000

Как я могу изменить этот формат на приемлемый формат даты и времени% Y% m% d% H% M% S? Изменение необработанного CSV-файла исключено, поскольку имеется более 1000000 строк.

Пожалуйста, помогите! Я прошу прощения за отсутствие форматирования текста.

1 Ответ

0 голосов
/ 11 февраля 2020

Вы можете попробовать это, он вернет Dateofbirth с типом объекта:

df['Dateofbirth'] = pd.to_datetime(df.Dateofbirth)
df['Dateofbirth'] = df['Dateofbirth'].dt.strftime('%Y%m%d %H%M%S')

или с помощью этого, если вы хотите Dateofbirth в качестве типа datetime:

df['Dateofbirth'] = pd.to_datetime(df['Dateofbirth'])
df['Dateofbirth'] = pd.to_datetime(df['Dateofbirth'].dt.strftime('%Y%m%d %H%M%S'))
...