Я новичок в Scala, и у меня есть случай, когда я пытаюсь извлечь определенный столбец в кадре данных и передать его другому методу для дальнейшей обработки.
В этом случае я могу получить значения столбца в виде строки. Я могу сделать одно из двух:
Преобразовать строку в карту [String, Map [String, Int]]
Преобразовать IndexedSequence [Map [String, Map [String, Int]]] в Map [String, Map [String, Int]]
Значение в моем фрейме данных выглядит следующим образом:
[endGoal -> [a -> 10, b -> 10], max -> [a -> 30, b -> 30]]
Фрагмент кода, который я пытаюсь использовать для преобразования строки в Map [String, Map [String, Int]], выглядит следующим образом:
val map = recordArray(33) //Got the String
//Converting it to IndexedSequence[Map[String, Map[String, Int]]]
val result = for (line <- map; array = map.split(",").map(_.trim))
yield Map(array.head -> array.tail.map(x => {val y = x.split(":"); (y(0).toString, y(1).toInt)}).toMap)
Но приведенный выше код помогает мне преобразовать его только в IndexedSequence [Map [String, Map [String, Int]]]
Я застрял в преобразовании его в Map [String, Map [String, Int]]. Не могли бы вы объяснить мне пример того, как получить значение в требуемом типе?
Спасибо.