问题描述
Dataframe df
有两列 - timestamp
和 qty
。 df
按唯一 timestamp
的升序排序。在 timestamp
列中第一次出现 >= n
连续零后,从底部的第一个 qty
开始查找子数据框。
例如
>>> import pandas as pd
>>> from datetime import datetime
>>> df = pd.DataFrame({'timestamp':[datetime(2018,12,1),datetime(2019,4,5,8,datetime(2020,9,10,11,11),datetime(2021,1,1)],'qty':[187.11,340,2947.65,15,23]})
>>> df
timestamp qty
0 2018-12-01 187.11
1 2019-04-01 340.00
2 2019-05-01 0.00
3 2019-08-01 0.00
4 2019-12-01 2947.65
5 2020-04-01 0.00
6 2020-08-01 0.00
7 2020-09-01 0.00
8 2020-10-01 5.00
9 2020-11-01 0.00
10 2020-11-11 0.00
11 2020-12-01 15.00
12 2020-12-11 0.00
13 2021-01-01 23.00
期望的输出:
在这种情况下,对于 n=3
,输出是从 2020-10-01
:
timestamp qty
8 2020-10-01 5.00
9 2020-11-01 0.00
10 2020-11-11 0.00
11 2020-12-01 15.00
12 2020-12-11 0.00
13 2021-01-01 23.00
对于 n=2
,输出是从 2020-12-01
开始的数据帧:
timestamp qty
11 2020-12-01 15.00
12 2020-12-11 0.00
13 2021-01-01 23.00
对于 n=1
,输出是从 2021-01-01
开始的数据帧:
timestamp qty
13 2021-01-01 23.00
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)