Scala: превратить массив в DataFrame или RDD - PullRequest
0 голосов
/ 29 мая 2018

В настоящее время я работаю над IntelliJ в Maven.Есть ли способ превратить массив в фрейм данных или RDD с первой частью массива в качестве заголовка?

Я в порядке с превращением массива в список, если он может быть преобразован вфрейм данных или RDD.

Пример:

вход

val input = Array("Name, Number", "John, 9070", "Sara, 8041")

выход

+----+------+
|Name|Number|
+----+------+
|John| 9070 |
|Sara| 8041 |
+----+------+

1 Ответ

0 голосов
/ 29 мая 2018
import org.apache.spark.sql.SparkSession

val ss = SparkSession
  .builder
  .master("local[*]")
  .appName("test")
  .getOrCreate()

val input = Array("Name, Number", "John, 9070", "Sara, 8041")

val header = input.head.split(", ")
val data = input.tail
val rdd = ss.sparkContext.parallelize(data)
val df = rdd.map(x => (x.split(",")(0),x.split(",")(1))).toDF(header: _*)
df.show(false)

+----+------+
|Name|Number|
+----+------+
|John| 9070 |
|Sara| 8041 |
+----+------+
...