cubo

Cree un cubo multidimensional para el dataframe actual mediante las columnas especificadas, lo que permite realizar agregaciones en ellos.

Sintaxis

cube(*cols: "ColumnOrName")

Parámetros

Parámetro Tipo Descripción
cols list, str, int o Column Columnas por las que se va a cubo. Cada elemento debe ser un nombre de columna (cadena) o una expresión (Columna) o un ordinal de columna (int, basado en 1) o una lista de ellos.

Devoluciones

GroupedData: cubo de los datos basados en las columnas especificadas.

Notas

Un ordinal de columna comienza a partir de 1, que es diferente del basado en __getitem__0.

Ejemplos

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|
# +-----+----+-----+