반응형
Pandas groupby.agg 함수: 데이터 집계의 강력한 도구
Pandas 라이브러리에서 제공하는 groupby.agg 함수는 데이터를 그룹화하고 여러 집계 함수를 동시에 적용할 수 있는 유용한 기능입니다. 이 포스팅에서는 groupby.agg의 사용법을 살펴보고, 여러 집계 함수의 활용 방법에 대해 예제를 통해 알아보겠습니다.
groupby.agg 함수 소개
groupby.agg 함수는 데이터프레임을 특정 열을 기준으로 그룹화한 후, 각 그룹에 대해 다양한 집계 함수를 적용할 수 있게 해줍니다. 이를 통해 데이터 분석의 효율성을 높이고, 통찰력을 제공합니다.
함수 시그니처
DataFrame.groupby(by).agg(func)
매개변수:
- by: 그룹화할 기준이 되는 열의 이름 또는 리스트입니다.
- func: 적용할 집계 함수 또는 함수의 리스트입니다.
반환 값:
- 그룹화된 데이터프레임과 집계된 결과를 포함하는 새로운 데이터프레임을 반환합니다.
사용 예제
기본 예제
다음은 groupby.agg 함수를 사용하여 데이터프레임을 그룹화하고 간단한 집계 함수를 적용하는 기본 예제입니다.
import pandas as pd
# 예제 데이터프레임 생성
data = {
'Category': ['A', 'A', 'B', 'B', 'C', 'C'],
'Values': [10, 20, 30, 40, 50, 60]
}
df = pd.DataFrame(data)
# 그룹화 및 집계
result = df.groupby('Category').agg({'Values': ['sum', 'mean', 'max']})
print(result)
# 출력:
# Values
# sum mean max
# Category
# A 30 15.0 20
# B 70 35.0 40
# C 110 55.0 60
여러 집계 함수 적용 예제
다양한 집계 함수를 동시에 적용하는 예제를 살펴보겠습니다.
import pandas as pd
# 추가 예제 데이터프레임 생성
data = {
'Product': ['X', 'X', 'Y', 'Y', 'Z', 'Z'],
'Sales': [150, 200, 300, 500, 450, 600],
'Quantity': [1, 2, 3, 1, 2, 3]
}
df = pd.DataFrame(data)
# 그룹화 및 여러 집계 함수 적용
result = df.groupby('Product').agg({
'Sales': ['sum', 'mean', 'min', 'max'],
'Quantity': ['count', 'sum']
})
print(result)
# 출력:
# Sales Quantity
# sum mean min max count sum
# Product
# X 350 175.0 150 200 2 3
# Y 800 400.0 300 500 2 4
# Z 1050 525.0 450 600 2 5
결론
groupby.agg 함수는 데이터프레임에서 다양한 집계 함수를 적용할 수 있는 강력한 도구입니다. 데이터를 효과적으로 분석하고 인사이트를 얻는 데 큰 도움이 됩니다. 데이터를 집계하여 더욱 깊이 있는 분석을 해보세요!
- groupby.agg를 통해 데이터에서 숨겨진 패턴과 트렌드를 발견해보세요!
- 지금 바로 groupby.agg를 활용하여 데이터의 신비를 풀어보세요!
반응형
'Python > Pandas' 카테고리의 다른 글
pandas TypeError: 'Series' object has no attribute 'length' 오류 해결하기 (0) | 2025.05.12 |
---|---|
pandas TypeError: 'NoneType' object is not subscriptable 오류 해결하기 (0) | 2025.05.12 |
pandas.groupby를 통한 데이터 집계 (0) | 2025.05.12 |
pandas TypeError: 'DataFrame' object is not iterable 오류 해결하기 (0) | 2025.05.11 |
pandas TypeError: 'DataFrame' object is not callable 오류 해결하기 (0) | 2025.05.11 |