这似乎应该很容易,但是在谷歌搜索时找不到任何答案。假设我有一些变量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
答案 0 :(得分:2)
添加一个pd.offsets
。MonthEnd
对象:
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