куб

Создайте многомерный куб для текущего кадра данных с помощью указанных столбцов, что позволяет выполнять агрегаты для них.

Синтаксис

cube(*cols: "ColumnOrName")

Параметры

Параметр Тип Описание
cols list, str, int или Column Столбцы для куба. Каждый элемент должен быть именем столбца (строкой) или выражением (столбец) или порядковым порядковым номером столбца (int, 1) или списком из них.

Возвраты

GroupedData: куб данных на основе указанных столбцов.

Примечания

Порядковый номер столбца начинается с 1, который отличается от 0.__getitem__

Примеры

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