Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir sütundaki değerleri bir listeye toplar, yinelenenleri korur ve bu nesne listesini döndürür. Toplanan sonuçların sırası satırların sırasına bağlı olduğundan işlev belirlenimci değildir ve bu da karıştırma işlemlerinden sonra belirlenimci olmayan bir duruma gelir.
Sözdizimi
from pyspark.sql import functions as sf
sf.collect_list(col)
Parametreler
| Parametre | Türü | Description |
|---|---|---|
col |
pyspark.sql.Column veya sütun adı |
İşlevin hesaplandığı hedef sütun. |
İade
pyspark.sql.Column: Yinelenen değerlerin dahil olduğu, toplanan değerlerin listesini temsil eden yeni bir Column nesnesi.
Örnekler
Örnek 1: DataFrame'den değer toplama ve sonucu artan düzende sıralama
from pyspark.sql import functions as sf
df = spark.createDataFrame([(1,), (2,), (2,)], ('value',))
df.select(sf.sort_array(sf.collect_list('value')).alias('sorted_list')).show()
+-----------+
|sorted_list|
+-----------+
| [1, 2, 2]|
+-----------+
Örnek 2: DataFrame'den değer toplama ve sonucu azalan düzende sıralama
from pyspark.sql import functions as sf
df = spark.createDataFrame([(2,), (5,), (5,)], ('age',))
df.select(sf.sort_array(sf.collect_list('age'), asc=False).alias('sorted_list')).show()
+-----------+
|sorted_list|
+-----------+
| [5, 5, 2]|
+-----------+
Örnek 3: Birden çok sütun içeren bir DataFrame'den değer toplama ve sonucu sıralama
from pyspark.sql import functions as sf
df = spark.createDataFrame([(1, "John"), (2, "John"), (3, "Ana")], ("id", "name"))
df = df.groupBy("name").agg(sf.sort_array(sf.collect_list('id')).alias('sorted_list'))
df.orderBy(sf.desc("name")).show()
+----+-----------+
|name|sorted_list|
+----+-----------+
|John| [1, 2]|
| Ana| [3]|
+----+-----------+