Freigeben über


Würfel

Erstellen Sie einen mehrdimensionalen Cube für den aktuellen DataFrame mithilfe der angegebenen Spalten, sodass Aggregationen für sie ausgeführt werden können.

Syntax

cube(*cols: "ColumnOrName")

Parameter

Parameter Typ Beschreibung
cols list, str, int oder Column Die Spalten, nach der Würfel würfeln sollen. Jedes Element sollte ein Spaltenname (Zeichenfolge) oder ein Ausdruck (Column) oder ein Spalten-Ordinal (int, 1-basiert) oder eine Liste davon sein.

Rückkehr

GroupedData: Cube der Daten basierend auf den angegebenen Spalten.

Hinweise

Eine Spalten-Ordnungszahl beginnt von 1, die sich von der 0-basierten __getitem__unterscheidet.

Beispiele

df = spark.createDataFrame([("Alice", 2), ("Bob", 5)], schema=["name", "age"])

df.cube("name").count().orderBy("name").show()
# +-----+-----+
# | name|count|
# +-----+-----+
# | NULL|    2|
# |Alice|    1|
# |  Bob|    1|
# +-----+-----+

df.cube("name", df.age).count().orderBy("name", "age").show()
# +-----+----+-----+
# | name| age|count|
# +-----+----+-----+
# | NULL|NULL|    2|
# | NULL|   2|    1|
# | NULL|   5|    1|
# |Alice|NULL|    1|
# |Alice|   2|    1|
# |  Bob|NULL|    1|
# |  Bob|   5|    1|
# +-----+----+-----+