向熊猫期间对象添加n个月?

时间:2019-01-23 05:44:16

标签: python pandas period

这似乎应该很容易,但是在谷歌搜索时找不到任何答案。假设我有一些变量k,类型为pandas.Period,其值为:

Period('2018-11', 'M')

如何向此变量添加n个月。例如,如果n为3,我希望k为

Period('2019-02', 'M')

我尝试了以下方法:

k.month = k.month + 12

但这不能说:

AttributeError: attribute 'month' of 'pandas._libs.tslibs.period._Period' objects is not writable

2 个答案:

答案 0 :(得分:2)

添加一个pd.offsetsMonthEnd对象:

pd.Period('2018-11', 'M') + pd.offsets.MonthEnd(3)

答案 1 :(得分:1)

由于您要在月份中添加月份,因此只能使用+

k = pd.Period('2018-11', 'M')
print (k)
2018-11

k1 = k + 3
print (k1)
2019-02

k2 = k + 12
print (k2)
2019-11