Scala 如何基于其他列在spark中添加贴图列?

Scala 如何基于其他列在spark中添加贴图列?,scala,spark-dataframe,Scala,Spark Dataframe,我有这张桌子: |Name|Val| |----|---| |Bob |1 | |Marl|3 | 我想把它转换成一个带有单个元素的贴图,如下所示: |Name|Val|MapVal| |----|---|------| |Bob |1 |(0->1)| |Marl|3 |(0->3)| 你知道如何在scala中实现吗? 我找不到任何方法在with column语句中构建映射…找到它-只需要包含隐式sql: import org.apache.spark.sql.func

我有这张桌子:

|Name|Val|
|----|---|
|Bob |1  |
|Marl|3  |
我想把它转换成一个带有单个元素的贴图,如下所示:

|Name|Val|MapVal|
|----|---|------|
|Bob |1  |(0->1)|
|Marl|3  |(0->3)|
你知道如何在scala中实现吗?
我找不到任何方法在
with column
语句中构建映射…

找到它-只需要包含隐式sql:

import org.apache.spark.sql.functions._
然后使用
map
功能:
df.with column(“MapVal”、map(light(0)、col(“Val”))