Pular para o conteúdo principal

enrolar

Crie um rollup multidimensional para o DataFrame atual usando as colunas especificadas, permitindo a agregação entre elas.

Sintaxe

rollup(*cols: "ColumnOrNameOrOrdinal")

Parâmetros

Parâmetro

Tipo

Descrição

cols

lista, string, inteiro ou coluna

As colunas pelas quais enrolar. Cada elemento deve ser um nome de coluna (strings), uma expressão (Column), um número ordinal de coluna (int, baseado em 1) ou uma lista deles.

Devoluções

GroupedDataDados consolidados com base nas colunas especificadas.

Notas

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

Exemplos

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