agrégation
Créez un regroupement multi-dimensionnel pour le DataFrame actuel à l'aide des colonnes spécifiées, ce qui permet d'effectuer une agrégation sur celles-ci.
Syntaxe
rollup(*cols: "ColumnOrNameOrOrdinal")
parameter
parameter | Type | Description |
|---|---|---|
| list, str, int ou Colonne | Les colonnes à agréger. Chaque élément doit être un nom de colonne (chaîne), une expression (colonne), un ordinal de colonne (entier, basé sur 1) ou une liste de ceux-ci. |
Renvoie
GroupedDataDonnées agrégées basées sur les colonnes spécifiées.
Notes
Un ordinal de colonne start à partir de 1, ce qui est différent du __getitem__ basé sur 0.
Exemples
Python
df = spark.createDataFrame([("Alice", 2), ("Bob", 5)], schema=["name", "age"])
df.rollup("name").count().orderBy("name").show()
# +-----+-----+
# | name|count|
# +-----+-----+
# | NULL| 2|
# |Alice| 1|
# | Bob| 1|
# +-----+-----+
df.rollup("name", df.age).count().orderBy("name", "age").show()
# +-----+----+-----+
# | name| age|count|
# +-----+----+-----+
# | NULL|NULL| 2|
# |Alice|NULL| 1|
# |Alice| 2| 1|
# | Bob|NULL| 1|
# | Bob| 5| 1|
# +-----+----+-----+