Python: изменить формат даты и времени - PullRequest
0 голосов
/ 05 мая 2020

У меня есть этот Pandas фрейм данных:

enter image description here

Я хочу изменить формат даты с "% d /% m /% y" на "% m /% d /% y"

all_data["Date demande1"]=all_data["Date demande"].apply(lambda x: datetime.strftime(pd.to_datetime(x), "%m/%d/%Y"))

Я пробовал эту функцию, она работает с некоторыми строками, а другие нет ??

enter image description here

Ответы [ 2 ]

0 голосов
/ 05 мая 2020

Похоже, что функция pd.to_datetime предполагает, что даты в исходном столбце уже находятся в формате «месяц / день / год», если это кажется возможным (вот почему это работает, когда это явно невозможно, ie если день> 12).

Если вы проверите документацию , там есть аргумент dayfirst, который по умолчанию равен False: возможно, изменение этого параметра исправит это. Попробуйте позвонить по номеру pd.to_datetime(x, dayfirst=True), чтобы узнать, работает ли это?

0 голосов
/ 05 мая 2020
all_data["Date demande1"]=all_data["Date demande"].apply(lambda x: datetime.strftime(pd.to_datetime(x, format="%d/%m/%Y %H:%M", errors='ignore'), "%m/%d/%Y"))
...