У меня есть класс дел для хранения данных: case class A (x: String, y: String, a: Int, b: Int)
Теперь данные представляют собой список классов дел List(A(x1, y1, a1, a2), A(x1, y2, a2, b2), ..., A(xn, yn, an, bn))
, где A1, A2, A3 - разные экземпляры классов дел.
Теперь мне нужно сгруппировать данные, если записи находятся в перекрывающемся интервале, определяемом (a, b).
Так что, если различные записи похожи на
List(
A(x0, y1, 1, 5),
A(x0, y2, 3, 8),
A(x0, y3, 7, 10),
A(x0, y4, 12,15),
A(x1, y5, 1, 8),
A(x2, y6, 2, 7), ...)
, окончательная группировка будетосновываться на классе дела B: case class B (x: String, y:List(String), a:Int, b: Int)
вывод: List(B(x0, List(y1, y2, y3), 1, 10), B(x0, List(y4), 12, 15), B(x1, List(y5,y6), 1, 8), ...)