我有这张桌子:
|Name|Val|
|----|---|
|Bob |1 |
|Marl|3 |
我想将它转换为具有单个元素的地图:
|Name|Val|MapVal|
|----|---|------|
|Bob |1 |(0->1)|
|Marl|3 |(0->3)|
知道如何在scala中执行此操作吗?
我找不到任何方法在withColumn
语句中构建地图......
答案 0 :(得分:3)
找到它 - 只需要包含隐式sql:
import org.apache.spark.sql.functions._
然后使用map
函数:
df.withColumn("MapVal", map(lit(0), col("Val")))