У меня есть следующий объект в Scala:
List[(String,Map[String, Seq[(Int, Double)]])]
И я хотел бы преобразовать его в последовательность отдельных строк, где каждая строка последовательности имеет 4 члена: (String,String,Int,Double)
.
Например, если бы у меня были следующие данные:
List(
("SuperGroup1", Map("SubGroup1" -> Seq((17,24.1),(38,39.2)))),
("SuperGroup1", Map("SubGroup2" -> Seq((135,302.3),(938,887.4))))
)
Я хочу превратить это в:
Seq(
("SuperGroup1","SubGroup1",17,24.1),
("SuperGroup1","SubGroup1",38,39.2),
("SuperGroup1","SubGroup2",135,302.3),
("SuperGroup1","SubGroup2",938,887.4)
)
Я полагаю, вы можете использовать flatMap
или что-то в этом роде, но я не совсем уверен, как это будет работать. Я вижу, что в RDD есть функция с именем flatMapValues
, но как насчет стандартной комбинации списка / карты, как у меня?