ロールアップ

指定した列を使用して、現在の DataFrame の多次元ロールアップを作成し、それらを集計できるようにします。

構文

rollup(*cols: "ColumnOrNameOrOrdinal")

パラメーター

パラメーター タイプ 説明
cols list、str、int、または Column ロールアップする列。 各要素は、列名 (文字列) または式 (Column) または列序数 (int、1 ベース) またはそれらのリストである必要があります。

返品

GroupedData: 指定した列に基づいてデータをロールアップします。

メモ

列の序数は 1 から始まります。これは、0 から始まる __getitem__とは異なります。

例示

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