我目前正在使用Maven中的IntelliJ。 有没有办法将数组转换为数据帧或RDD,并将数组的第一部分作为标题?
我可以将数组转换为List,只要它可以转换为数据帧或RDD。
示例:
输入
val input = Array("Name, Number", "John, 9070", "Sara, 8041")
输出
+----+------+
|Name|Number|
+----+------+
|John| 9070 |
|Sara| 8041 |
+----+------+
答案 0 :(得分:0)
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 |
+----+------+