gpt4 book ai didi

apache-spark - 从嵌套数组和结构 Spark 中提取值

转载 作者:行者123 更新时间:2023-12-02 19:54:59 25 4
gpt4 key购买 nike

我有一个类似下面的架构。我想知道在 Spark 中选择元素座并驱动然后将其铸成字符串的最佳方法是什么。我在Spark 1.6的数据框中读取此内容。

|-- cars: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- carId: string (nullable = true)
| | |-- carCode: string (nullable = true)
| | |-- carNumber: string (nullable = true)
| | |-- features: array (nullable = true)
| | | |-- element: struct (containsNull = true)
| | | | |-- seat: string (nullable = true)
| | | | |-- drive: string (nullable = true)

cars.features的输出作为json中的car_features:
"cars_features":[[{"seat":"Auto","drive":"Manual"}]]

我正在尝试选择“自动”并将其放入数据框列,并选择“手动”并放入另一列。

当前尝试将整个结构返回为:
+-------------------+
|car_features |
+-------------------+
| [[Auto,Manual]] |
+-------------------+

col("car.features").getItem(0).as("car_features_seat")

最佳答案

我不得不钻两次数组:

col("car.features").getItem(0).getItem(0).getItem("seat").cast("String").as("car_features_seat")

这将提取“自动”

关于apache-spark - 从嵌套数组和结构 Spark 中提取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57777471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com