使用
Spark
中的struct
函数
可以将多个列合并为一个struct类型的列。以下是一个代码示例:
from pyspark.sql.functions import struct
# 创建一个Spark DataFrame
df = spark.createDataFrame([(1, 'John', 'Doe'), (2, 'Jane', 'Doe')], ['id', 'first_name', 'last_name'])
# 使用struct函数将两个列合并为一个struct类型的列
df = df.select('id', struct('first_name', 'last_name').alias('name'))
# 打印结果
df.show()
输出结果为:
+---+----------+
| id| name|
+---+----------+
| 1|[John, Doe]|
| 2|[Jane, Doe]|
+---+----------+
在这个示例中,我们使用struct函数将“first_name”和“last_name”这两列合并为一个名为“name”的struct类型列,并将结果存储在一个新的DataFrame中。