Извлечение уникальных месячных периодов из столбца даты и времени панд - PullRequest
0 голосов
/ 28 декабря 2018

У меня есть такой столбец даты.

2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-28
2012-01-29
2012-01-29
2012-01-29
2012-01-29
2012-01-29
2012-01-29

....
2016-12-31
2016-12-31
2016-12-31
2016-12-31

Я хочу преобразовать его в любой из следующих форматов: т.е. получить уникальный гггг-мм

2012-01  or 2012-Jan   or Jan
2012-02  or 2012-Feb   or Feb
2012-03 
...
2016-12   or 2012-Dec  or Dec

1 Ответ

0 голосов
/ 28 декабря 2018

Используйте DatetimeIndex.to_period:

pd.DatetimeIndex(df['date']).to_period('M').unique()
#  PeriodIndex(['2012-01', '2016-12'], dtype='period[M]', name='date', freq='M')

Если нужны названия месяцев, используйте strftime:

df['date'].dt.strftime('%Y-%b').unique()
# array(['2012-Jan', '2016-Dec'], dtype=object)

Если необходим формат серии, используйте drop_duplicates:

df['date'].dt.strftime('%Y-%b').drop_duplicates()

0     2012-Jan
18    2016-Dec
Name: date, dtype: object
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...