Apache spark 从collect_集合创建列值的唯一方式
在聚合函数中使用Apache spark 从collect_集合创建列值的唯一方式,apache-spark,pyspark,Apache Spark,Pyspark,在聚合函数中使用collect\u set时,我得到None值的[],但我想要类似于pyspark中的数组值。有什么办法可以取代它吗?对于非None值,它看起来已经正常了。这就是您要寻找的吗 import pyspark.sql.functions as f df = spark.createDataFrame([(1, 'A'), (2, None), (1, None), (3, 'B')], ['col1', 'col2']) df = df.fillna('None') display(
collect\u set
时,我得到None
值的[]
,但我想要类似于pyspark中的数组值。有什么办法可以取代它吗?对于非None值,它看起来已经正常了。这就是您要寻找的吗
import pyspark.sql.functions as f
df = spark.createDataFrame([(1, 'A'), (2, None), (1, None), (3, 'B')], ['col1', 'col2'])
df = df.fillna('None')
display(df.groupBy('col1').agg(f.collect_set('col2').alias('setCol2')))
请提供一份样本数据。