我有一个类似以下的架构。我想知道火花中选择元件座并驱动然后将其铸成绳子的最佳方法是什么。我正在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")
答案 0 :(得分:0)
我不得不两次钻入数组:
paddingBottom
这将提取“自动”