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

选择位于日期时间间隔内的行

选择位于日期时间间隔内的行

冉冉说 2021-09-14 21:23:04
我正在尝试比较两个数据帧并从第一个数据帧中删除不在第二个数据帧中的日期之间的行(或...选择那些在第二个数据帧中的日期之间的行)。选择应该包括在内。这可能真的很简单,但它现在不适合我点击。示例数据如下。对于数据框 1,可以使用从 2018 年 7 月 1 日开始到 2018 年 11 月 30 日结束的每日数据生成,并在“数字”列中使用随机数。将...在数据帧1是指用来显示跳过数据,但该数据是在有真正的数据帧。数据框 1:               NumberDate2018-07-01     15.22018-07-02     17.32018-07-03     19.52018-07-04     13.72018-07-05     19.1...2018-09-15     30.42018-09-16     25.72018-09-17     21.22018-09-18     19.72018-09-19     23.4...2018-11-01     30.82018-11-02     47.22018-11-03     25.32018-11-04     39.72018-11-05     43.8数据框 2:              ChangeDate2018-07-02     Start2018-07-04     End2018-09-16     Start2018-09-18     End2018-11-02     Start2018-11-04     End对于上面的例子,输出应该是:               NumberDate2018-07-02     17.32018-07-03     19.52018-07-04     13.72018-09-16     25.72018-09-17     21.22018-09-18     19.72018-11-02     47.22018-11-03     25.32018-11-04     39.7
查看完整描述

2 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

你可以试试这个,我希望开始和结束一个接一个地出现并排序。


df3 = pd.concat([df[i:j] for i,j in zip(df2.loc[df2['Change']=='Start'].index, df2.loc[df2['Change']=='End'].index)]))

             Number

Date              

2018-07-02    17.3

2018-07-03    19.5

2018-07-04    13.7

2018-09-16    25.7

2018-09-17    21.2

2018-09-18    19.7

2018-11-02    47.2

2018-11-03    25.3

2018-11-04    39.7


查看完整回答
反对 回复 2021-09-14
  • 2 回答
  • 0 关注
  • 199 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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