【问题标题】:Scala And Spark , rdd to dataframe creation from of dictionaryScala和Spark,rdd从字典创建数据框
【发布时间】:2017-08-28 18:37:24
【问题描述】:
您能告诉我如何从以下代码创建数据框吗?
val x =List(Map("col1"->"foo","col2"->"bar"))
val RDD =sc.parallelize(x)
输入如上图即RDD[Map[String, String]]
想要以 col1 和 col2 作为列名并将 foo 和 bar 作为单行转换为数据框。
【问题讨论】:
标签:
scala
apache-spark
spark-dataframe
【解决方案1】:
您可以创建一个案例类,将 rdd 中的 Maps 转换为案例类,然后 toDF 应该可以工作:
case class r(col1: Option[String], col2: Option[String])
RDD.map(m => r(m.get("col1"), m.get("col2"))).toDF.show
+----+----+
|col1|col2|
+----+----+
| foo| bar|
+----+----+