为了账号安全,请及时绑定邮箱和手机立即绑定

pandas - 如何根据具有“周数年 - 年”的列来切片数据帧?

pandas - 如何根据具有“周数年 - 年”的列来切片数据帧?

慕容708150 2022-08-25 15:54:49
我有一个看起来像这样的数据帧:>>> my_df.loc[600:614,'Week-Year']600    39-2018601    39-2018602    40-2018603    40-2018604    41-2018605    41-2018606    42-2018607    42-2018608    43-2018609    43-2018610    44-2018611    44-2018612    45-2018613    45-2018614    46-2018该列基本上是“年周数 - 年”。我现在想将此数据帧从某一周切成某一周。这是我尝试过的:>>> end_date = datetime(2013, 4, 30)>>> my_df.loc[(my_df['Week-Year'] <= end_date.strftime('%M-%Y'))]但是,这不会返回任何内容。那么,我该怎么做呢?
查看完整描述

1 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

我认为这里有必要转换为日期时间:Week-Year


d = pd.to_datetime(my_df['Week-Year'].add('_1'), format='%W-%Y_%w')

#https://stackoverflow.com/a/54033252/2901002

#ISO week numbers (ISO 8601 week definitions)

d = pd.to_datetime(my_df['Week-Year'].add('_1'), format='%V-%G_%u')

然后在布尔索引中进行筛选:


df = my_df[d <= end_date]


查看完整回答
反对 回复 2022-08-25
  • 1 回答
  • 0 关注
  • 83 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号