如何更改pandas df中的datetime值?

时间:2019-04-22 21:42:37

标签: python pandas datetime

我有一个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/10/2018到31/12/2018等等.....

1 个答案:

答案 0 :(得分:0)

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

我们有一个datetime列,其中包含我选择的随机日期。然后,我们在每个日期的末尾添加一个时间序列偏移量,以使其季度末并标准化时间。