pyspark 提取表值和列表

polhcujo  于 4个月前  发布在  Spark
关注(0)|答案(1)|浏览(80)

我有一个表,在其中一列中,所有的值都以列表的形式呈现。同时,在这一列的每一行中,都有一个列表,其中只有一个值。我如何通过创建一个新列或更改它来获得这个值。示例:

| left | center | right |
|:---- |:------:| -----:|
| One  | Two    | [123] |
| One  | Two    | [234] |
| One  | Two    | [12.5]|

字符串
结果

| left | center | right |
|:---- |:------:| -----:|
| One  | Two    | 123   |
| One  | Two    | 234   |
| One  | Two    | 12.5  |

13z8s7eq

13z8s7eq1#

您可以使用pyspark方法element_at https://spark.apache.org/docs/3.1.3/api/python/reference/api/pyspark.sql.functions.element_at.html
因此,如果你有Dataframe df,可以通过以下方式将其转换为结果:

result = df.withColumn("right", element_at(df.right, 1))

字符串

相关问题