首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >开始日期和完成日期之间的相关月份-Python

开始日期和完成日期之间的相关月份-Python
EN

Stack Overflow用户
提问于 2021-03-01 19:23:30
回答 1查看 27关注 0票数 0

我正在使用python/Pandas分析原始数据,这些数据具有下面的A到C列。我想要做的是添加新的列D,它使用Pandas显示开始日期和结束日期之间的相关月份。似乎开始/结束日期的数据类型是系列的,你能告诉我如何获得这个结果吗?我试着使用datetime模块,但它不能很好地工作,也找不到原因。

在文本中:

代码语言:javascript
复制
print (df)

  Participants       Start      Finish                 Month
1                                                           
2          AAA  2021-03-01  2021-05-30                 3,4,5
3          BBB  2021-03-01  2021-03-31                     3
4          CCC  2021-05-01  2021-07-31                 5,6,7
5          DDD  2021-04-01  2021-12-31  4,5,6,7,8,9,10,11,12
EN

回答 1

Stack Overflow用户

发布于 2021-03-01 19:26:46

date_range中使用自定义的lambda函数,将值转换为字符串并连接在一起:

代码语言:javascript
复制
f=lambda x: ','.join(str(y.month) for y in pd.date_range(x['Start'],x['Finish'], freq='MS'))
df['Month'] = df.apply(f, axis=1)
print (df)
  Participants       Start      Finish                 Month
1                                                           
2          AAA  2021-03-01  2021-05-30                 3,4,5
3          BBB  2021-03-01  2021-03-31                     3
4          CCC  2021-05-01  2021-07-31                 5,6,7
5          DDD  2021-04-01  2021-12-31  4,5,6,7,8,9,10,11,12
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66421213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档