#python #pandas #dataframe
Вопрос:
У меня есть Дата/Время в следующем формате:
10/01/21 04:49:43,75
ММ/ДД/ГГ ЧЧ/ММ/СС.мс
Я пытаюсь преобразовать это из объекта в дату-время. Я попробовал следующий код, но я получаю сообщение об ошибке, что он не соответствует формату. Есть какие-нибудь идеи?
df['Date/Time'] = pd.to_datetime(df['Date/Time'], format = '%m%d%y %H%M%S%f')
Комментарии:
1. Не могли бы Вы указать df[‘Дата/время’] ?
2. Я добавил картинку к своему первоначальному вопросу.
3. Я имею в виду, конечно, что он не соответствует формату:
%m%d%y
не содержит косых черт , но10/01/21
, например, содержит. То же самое с двоеточиями, разделяющими часы, минуты и секунды: в формате%H%M%S%f
нет двоеточий4. Я добавил их, и это не сработало, затем я удалил, чтобы опубликовать этот вопрос. это не решило проблему.
Ответ №1:
вы можете попробовать позволить пандам определить формат даты и времени с помощью:
pd.to_datetime(df['Date/Time'], infer_datetime_format=True)
Комментарии:
1. Ошибка синтаксического анализа: Неизвестный формат строки: 10/02/21 23:41:40.5,»10/2/21 11:41:40 Сбой канала PM» При этом я получаю эту ошибку.
2. хорошо, это не похоже на допустимый формат:
10/2/21 11:41:40 PM Channel Failure
можете ли вы очистить бит данных перед анализом?3. Как бы я это сделал? Я новичок в Python и Пандах, поэтому все еще учусь. Мои данные состоят из двух столбцов, один-дата/время, другой-давление. У меня уже есть давление, чтобы зарегистрироваться как числовое, теперь я просыпаюсь, чтобы узнать дату/время, чтобы получить правильный формат
4. попробуй вот с этим
pd.to_datetime(df['Date/Time'].str.replace(r'^(.*PM|.*AM)(.*)', r"1", regex=True), infer_datetime_format=True)
. Не зная больше о данных, трудно понять, как их нужно очистить