Scala和Spark,rdd从字典创建数据框
Posted
技术标签:
【中文标题】Scala和Spark,rdd从字典创建数据框【英文标题】:Scala And Spark , rdd to dataframe creation from of dictionary 【发布时间】: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 作为单行转换为数据框。
【问题讨论】:
【参考方案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|
+----+----+
【讨论】:
以上是关于Scala和Spark,rdd从字典创建数据框的主要内容,如果未能解决你的问题,请参考以下文章