как изменить формат даты дд-мм-гггг на гггг-дд-мм в пандах - PullRequest
0 голосов
/ 30 августа 2018

Как изменить формат даты дд-мм-гггг на гггг-дд-мм в пандах. У меня есть поле даты, которое уже в формате дд-мм-гггг, но когда я пытаюсь

df[('date')] = pd.to_datetime(df[('date')]).dt.strftime('%Y-%m-%d')

выдаёт гггг-дд-мм

Ответы [ 3 ]

0 голосов
/ 30 августа 2018

Панды datetime данные серии не имеют собственный формат строки.

datetime значения хранятся внутри как целые числа. Подробнее см. этот ответ . Строковые представления - это просто представления . Например, когда вы используете команду print, используется конкретное строковое представление, чтобы данные отображались в удобочитаемом виде.

В большинстве случаев вам не нужно беспокоиться о представлении. Если вам нужен формат, отличный от представления по умолчанию, то есть «ГГГГ-ММ-ДД», вы можете использовать pd.Series.dt.strftime и указать формат строки. Для этого директивы strftime Python являются полезным ресурсом.

0 голосов
/ 31 августа 2018

Используйте это:

import pandas as pd

df['date'] = pd.to_datetime(df['date'],format='%d-%m-%Y').dt.strftime('%Y-%m-%d')#specify input format '%d-%m-%Y' and output format '%Y-%m-%d' or change output as desired i.e. %d/%m/%Y to give dd/mm/yyyy
0 голосов
/ 30 августа 2018

Я считаю, что это то, что вам нужно.

import pandas as pd
df = pd.read_csv("dates.csv")

df

   id        date
0   1  25/06/2018
1   2  14-11-2005
2   3  03/10/2010
3   4  13-08-2008
4   5  05-05-2005

Здесь не нужно указывать формат, который вы пробовали.

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

 id       date
0   1 2018-06-25
1   2 2005-11-14
2   3 2010-03-10
3   4 2008-08-13
4   5 2005-05-05
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...