在Spark Dataframe中连接包含列表值的列

时间:2018-03-20 11:23:55

标签: python apache-spark pyspark concatenation spark-dataframe

我有一个数据帧(spark),它有2列,每列都有列表值。我想创建一个新列,它连接2列(以及列中的列表值)。 例如,

第1列有一个行值 - [A,B]

第2列有一个行值 - [C,D]

"输出应该在新列中,即"

第3列(新创建的列),其行值为[A,B,C,D]

注意: - 列值具有存储在LIST

中的值

请帮我用pyspark实现这个。 感谢

2 个答案:

答案 0 :(得分:1)

我们可以使用UDF作为

 >>> from pyspark.sql import functions as F
 >>> from pyspark.sql.types import *
 >>> udf1 = F.udf(lambda x,y : x+y,ArrayType(StringType()))
 >>> df = df.withColumn('col3',udf1('col1','col2'))

答案 1 :(得分:-1)

请试试这个:

spark_frame = spark_frame.withColumn("concatenated_column", spark_frame.list_1_col + spark_frame.list_2_col)