是否存在某个现有的核心函数可以用来按顺序分区列表,例如将[1 2 3 7 8 14 15 16 17 20 21 22]变成[[1 2 3] [7 8] [14 15 16 17] [20 21 22]]?
我想到了使用循环的方法来做(每次当前项和前一项的差大于1时开始一个新列表),但我怀疑是否存在一种函数式的方式来表示这种方法。
关于这个问题,这是一个简化版本的数据清洁练习,我正在尝试通过检查数据的时间戳差异来识别一个传感器数据收集中断的位置(例如断电)。我可以看到像split-with这样的函数,但我认为提供给这些函数的谓词不能提供序列中前一项的值,以便比较序列中的项。
感谢您的考虑:)