小编Sar*_*rah的帖子

pySpark:如何获取数据框中 arrayType 列中 structType 中的所有元素名称?

我有一个看起来像这样的数据框:

 |-- name: string (nullable = true)
 |-- age: string (nullable = true)
 |-- job: string (nullable = true)
 |-- hobbies: array (nullable = true)
 |    |-- element: struct (containsNull = true)
 |    |    |-- favorite: string (nullable = true)
 |    |    |-- non-favorite: string (nullable = true)
Run Code Online (Sandbox Code Playgroud)

我正在尝试获取以下信息:

['favorite', 'non-favorite']
Run Code Online (Sandbox Code Playgroud)

然而,我发现的唯一最接近的解决方案是将爆炸函数与 一起使用withColumn,但它是基于我已经知道元素名称的假设。但我想要做的是,在不知道元素名称的情况下,我只想获取仅包含列名称的元素名称,在本例中为“爱好”。有没有一种好方法来获取任何给定列中的所有元素名称?

python apache-spark apache-spark-sql pyspark

3
推荐指数
1
解决办法
4363
查看次数

标签 统计

apache-spark ×1

apache-spark-sql ×1

pyspark ×1

python ×1