【发布时间】:2023-02-02 13:46:35
【问题描述】:
我希望更改数据存储在我的数据框列之一中的方式。
content-value 列目前有这种类型:
|-- content-value: map (nullable = true)
| |-- key: integer
| |-- value: array (valueContainsNull = true)
| | |-- element: string (containsNull = true)
数据目前是这样存储的:
{4 -> [5191, 57, -46, POS2], 5 -> [5413, 56, 48, POS2], 2 -> [5421, -59, 47, POS2], 1 -> [5237, -59, -47, POS2], 3 -> [5153, -10, 42, POS1]}
我想将其更改为看起来像的地图地图:
{4 -> {value -> 5191, x -> 57, y -> -46, pos -> POS2}, 5 -> {value -> 5413, x -> 56, y -> 48, pos -> POS2}, 2 -> {value -> 5421, x -> -59, y -> 47, pos -> POS2}, 1 -> {value -> 5237, x -> -59, y -> -47, pos -> POS2}, 3 -> {value -> 5153, x -> -10, y -> 42, pos -> POS1}}
我尝试使用键 ["value", "x", "y", "pos"] 创建一个新列并使用 map_from_array 但没有成功。
会喜欢一些帮助!
【问题讨论】:
标签: scala apache-spark pyspark