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.
Belirtilen gruplandırma kümelerini kullanarak geçerli DataFrame için çok boyutlu toplama oluşturun, böylece bunlar üzerinde toplama çalıştırabiliriz.
Sözdizimi
groupingSets(groupingSets: Sequence[Sequence["ColumnOrName"]], *cols: "ColumnOrName")
Parametreler
| Parametre | Türü | Açıklama |
|---|---|---|
groupingSets |
sütun veya str dizisi dizisi | Gruplandırmak için tek tek sütun kümesi. |
cols |
Sütun veya str | Kullanıcılar tarafından belirtilen ek gruplandırma sütunları. Bu sütunlar toplamadan sonra çıkış sütunları olarak gösterilir. |
İadeler
GroupedData: Veri kümelerini belirtilen sütunlara göre gruplandırma.
Örnekler
from pyspark.sql import functions as sf
df = spark.createDataFrame([
(100, 'Fremont', 'Honda Civic', 10),
(100, 'Fremont', 'Honda Accord', 15),
(100, 'Fremont', 'Honda CRV', 7),
(200, 'Dublin', 'Honda Civic', 20),
(200, 'Dublin', 'Honda Accord', 10),
(200, 'Dublin', 'Honda CRV', 3),
(300, 'San Jose', 'Honda Civic', 5),
(300, 'San Jose', 'Honda Accord', 8)
], schema="id INT, city STRING, car_model STRING, quantity INT")
df.groupingSets(
[("city", "car_model"), ("city",), ()],
"city", "car_model"
).agg(sf.sum(sf.col("quantity")).alias("sum")).sort("city", "car_model").show()
# +--------+------------+---+
# | city| car_model|sum|
# +--------+------------+---+
# | NULL| NULL| 78|
# | Dublin| NULL| 33|
# | Dublin|Honda Accord| 10|
# | Dublin| Honda CRV| 3|
# | Dublin| Honda Civic| 20|
# | Fremont| NULL| 32|
# | Fremont|Honda Accord| 15|
# | Fremont| Honda CRV| 7|
# | Fremont| Honda Civic| 10|
# |San Jose| NULL| 13|
# |San Jose|Honda Accord| 8|
# |San Jose| Honda Civic| 5|
# +--------+------------+---+