gpt4 book ai didi

Python:如何从整数中获取两个月之间的差异?

转载 作者:太空宇宙 更新时间:2023-11-03 13:07:34 25 4
gpt4 key购买 nike

我有一个数据框 df 如下所示:

df
A NUM_YYYYMM
0 a 201605
1 b 201602
2 c 201603
3 d 201601

其中 type(df['NUM_YYYYMM']) 返回 int。我想计算 t0=201612 和列 df['NUM_YYYYMM'] 之间的月差。所以:

df
A NUM_YYYYMM deltaT
0 a 201605 7
1 b 201602 10
2 c 201603 9
3 d 201601 11

最佳答案

转换列 to_datetime然后按 to_period 到月份,从 t0 中减去 Period:

t0 = '201612'
t = pd.to_datetime(t0, format='%Y%m').to_period('m')

df['deltaT'] = t - pd.to_datetime(df['NUM_YYYYMM'], format='%Y%m').dt.to_period('m')
print (df)
A NUM_YYYYMM deltaT
0 a 201605 7
1 b 201602 10
2 c 201603 9
3 d 201601 11

如果可能改变t0的格式:

t = pd.Period('2016-12')
df['deltaT'] = t - pd.to_datetime(df['NUM_YYYYMM'], format='%Y%m').dt.to_period('m')

关于Python:如何从整数中获取两个月之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53672779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com