1.21 有序:找出连续出现某种情况的区间
有日销售额统计表如下所示,找出出现连续三天及以上销售额均上涨的日期记录:
Date | Sales |
---|---|
2022-01-01 00:00:00 | 98.0000 |
2022-01-02 00:00:00 | 174.0000 |
2022-01-03 00:00:00 | 168.0000 |
2022-01-04 00:00:00 | 167.4000 |
2022-01-05 00:00:00 | 1696.0000 |
… | … |
脚本:
A | |
---|---|
1 | =T(“DailySales.xls”) |
2 | =0 |
3 | =A1.group@o(if(Sales>Sales[-1], A2,A2=A2+1)).select(~.len()>=3).conj() |
A3 把 A2 作为临时值,每当销售额上涨则 A2 不变,下跌则加 1,然后按照这个临时值分组,就把连续上涨的记录放到了同一组
运算结果:
Date | Sales |
---|---|
2022-01-10 | 95.76 |
2022-01-11 | 222.3 |
2022-01-12 | 2462.4 |
2022-01-28 | 86.4 |
2022-01-29 | 156 |
2022-01-30 | 608 |