如何将地图转换为数据框? [英] How to convert map to dataframe?

查看:92
本文介绍了如何将地图转换为数据框?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

m是如下地图:

  scala>米res119:scala.collection.mutable.Map [A​​ny,Any] = Map(A-> 0.11164610291904906,B- 0.11856755943424617,C-> 0.1023171832681312) 

我想得到:

 名称分数一个0.11164610291904906B 0.11856755943424617C 0.1023171832681312 

如何获取最终数据帧?

解决方案

首先将其隐藏为 Seq ,然后可以使用 toDF()函数.

  val spark = SparkSession.builder.getOrCreate()导入spark.implicits._val m = Map("A"-> 0.11164610291904906,"B"-> 0.11856755943424617,"C"-> 0.1023171832681312)val df = m.toSeq.toDF("name","score")df.show 

会给您:

  + ---- + ------------------- +|名称|得分|+ ---- + ------------------- +|A | 0.11164610291904906 ||B | 0.11856755943424617 ||C |0.1023171832681312 |+ ---- + ------------------- + 

m is a map as following:

scala> m
res119: scala.collection.mutable.Map[Any,Any] = Map(A-> 0.11164610291904906, B-> 0.11856755943424617, C -> 0.1023171832681312)

I want to get:

name  score
A  0.11164610291904906
B  0.11856755943424617
C  0.1023171832681312

How to get the final dataframe?

解决方案

First covert it to a Seq, then you can use the toDF() function.

val spark = SparkSession.builder.getOrCreate()
import spark.implicits._

val m = Map("A"-> 0.11164610291904906, "B"-> 0.11856755943424617, "C" -> 0.1023171832681312)
val df = m.toSeq.toDF("name", "score")
df.show

Will give you:

+----+-------------------+
|name|              score|
+----+-------------------+
|   A|0.11164610291904906|
|   B|0.11856755943424617|
|   C| 0.1023171832681312|
+----+-------------------+

这篇关于如何将地图转换为数据框?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆