그룹별

데이터 프레임을 지정된 열별로 그룹화하여 집계를 수행할 수 있도록 합니다. 사용 가능한 모든 집계 함수를 참조 GroupedData 하세요.

문법

groupBy(*cols: "ColumnOrNameOrOrdinal")

매개 변수

매개 변수 유형 설명
cols list, str, int 또는 Column 그룹화할 열입니다. 각 요소는 열 이름(문자열) 또는 식(열) 또는 열 서수(int, 1 기반) 또는 목록일 수 있습니다.

Returns

GroupedData: 지정된 열별로 그룹화된 데이터를 나타내는 GroupedData 개체입니다.

Notes

열 서수는 0부터 __getitem__시작하는 열과 다른 1부터 시작합니다.

예제

df = spark.createDataFrame([
    ("Alice", 2), ("Bob", 2), ("Bob", 2), ("Bob", 5)], schema=["name", "age"])

df.groupBy().avg().show()
# +--------+
# |avg(age)|
# +--------+
# |    2.75|
# +--------+

df.groupBy("name").agg({"age": "sum"}).sort("name").show()
# +-----+--------+
# | name|sum(age)|
# +-----+--------+
# |Alice|       2|
# |  Bob|       9|
# +-----+--------+

df.groupBy(df.name).max().sort("name").show()
# +-----+--------+
# | name|max(age)|
# +-----+--------+
# |Alice|       2|
# |  Bob|       5|
# +-----+--------+

df.groupBy(["name", df.age]).count().sort("name", "age").show()
# +-----+---+-----+
# | name|age|count|
# +-----+---+-----+
# |Alice|  2|    1|
# |  Bob|  2|    2|
# |  Bob|  5|    1|
# +-----+---+-----+