У меня есть следующий файл sampleDF DataFrame в Spark Scala:
+-------+--------+------------------
|col1 | col2| col3|
+-------+--------+------------------
| 200|20200218|batched-202002180|
| 207|20200218|batched-202002190|
+-------+--------+------------------
Теперь я собираю значения для одного столбца, выполняя следующую операцию в Spark: что дает следующее o / p:
scala> val result = newDF.select("col3").collect.map(row => row(0).toString)
result: Array[String] = Array(batched-202002180, batched-202002190)
Теперь, как мне также выбрать два других столбца col1 и col2 и собрать все три столбца в виде массива кортежей? Для краткости я показал только 3 столбца в приведенном выше DF. Мы можем ожидать, что будет более трех столбцов.
Ожидаемый результат:
Array((200, 20200218, "batched-202002180"), (207, 20200218, "batched-202002190"))