Как я могу изменить значения datetime в pandas df? - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть датафрейм pandas, а datetime используется в качестве индекса в следующем формате: datetime.date (2018, 12, 31).

Каждая дата и время представляют конец финансового года, т. Е. 31/12/2018, 31/12/2017, 31/12/2016 и т. Д.

Однако для некоторых компаний конец финансового года может быть 30/11/2018 или 31/10/2018 и т. Д. Вместо последней даты каждого года.

Есть ли какой-нибудь быстрый способ изменить нестандартную дату и время на последнюю дату каждого года? то есть с 30/11/2018 по 30/12/2018 и с 31 октября по 31 декабря 2008 года и т. д. *

1 Ответ

0 голосов
/ 23 апреля 2019
df = pd.DataFrame({'datetime': ['2019-01-02','2019-02-01', '2019-04-01', '2019-06-01', '2019-11-30','2019-12-30'],
                  'data': [1,2,3,4,5,6]})

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

df['quarter'] = df['datetime'] + pd.tseries.offsets.QuarterEnd(n=0)

df

     datetime  data  quarter
0   2019-01-02  1   2019-03-31
1   2019-02-01  2   2019-03-31
2   2019-04-01  3   2019-06-30
3   2019-06-01  4   2019-06-30
4   2019-11-30  5   2019-12-31
5   2019-12-30  6   2019-12-31

У нас есть столбец даты-времени со случайными датами, которые я выбрал.Затем мы добавляем смещение временного ряда в конец каждой даты, чтобы оно заканчивалось в конце квартала и стандартизировало время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...