cubo

Crie um cubo multidimensional para o DataFrame atual usando as colunas especificadas, permitindo que agregações sejam realizadas nelas.

Sintaxe

cube(*cols: "ColumnOrName")

Parâmetros

Parâmetro Tipo Descrição
cols list, str, int ou Column As colunas para colocar ao cubo. Cada elemento deve ser um nome de coluna (string) ou uma expressão (Column) ou um ordinal de coluna (int, baseado em 1) ou uma lista deles.

Devoluções

GroupedData: Cubo dos dados com base nas colunas especificadas.

Notes

Um ordinal de coluna começa em 1, que é diferente do ordinal baseado __getitem__em 0 .

Exemplos

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