상세 컨텐츠

본문 제목

Data Preprocessing - 그룹 연산

데이터분석/전처리

by 2^7 2024. 9. 26. 20:09

본문

데이터 전처리에서 그룹 연산

효율적이고 직관적인 데이터 처리를 위해 데이터를 특정 기준에 따라 그룹화하고 각 그룹에 대해 요약 통계를 계산하거나 변환하는 것이 그룹 연산

1.  그룹 연산의 기본 개념

데이터를 특정 열 또는 열들의 값을 기준으로 그룹화한 후, 각 그룹별로 연산을 수행

 

  1. 그룹화 (Grouping): 데이터를 하나 이상의 열을 기준으로 그룹화
  2. 연산 (Aggregation): 각 그룹에 대해 평균, 합계, 개수 등의 연산을 적용
  3. 결합 (Combine): 연산 결과를 하나의 데이터프레임으로 결합

2.  Pandas에서의 그룹 연산

import pandas as pd

# 샘플 데이터
data = {'지역': ['서울', '부산', '서울', '대구', '부산'],
        '상품': ['A', 'B', 'A', 'A', 'B'],
        '매출': [100, 200, 150, 300, 250]}

df = pd.DataFrame(data)

# 지역별 매출 합계 계산
grouped = df.groupby('지역')['매출'].sum()
print(grouped)

 

  • groupby('지역')은 지역 열을 기준으로 데이터를 그룹화
  • 각 그룹에 대해 매출 열의 합계를 계산
  • 출력 결과는 각 지역별 총 매출을 보여줌

3. 그룹 연산의 활용

  • 여러 연산 적용하기 : 그룹별로 합계, 평균 등 여러 연산을 동시에 적용
# 여러 연산 적용하기 (합계, 평균)
grouped = df.groupby('지역')['매출'].agg(['sum', 'mean'])
print(grouped)
  • 복수 열 기준으로 그룹화: 두 개 이상의 열을 기준으로 그룹화
# 지역과 상품을 기준으로 그룹화하여 매출 합계 계산
grouped = df.groupby(['지역', '상품'])['매출'].sum()
print(grouped)
  • 필터링: 특정 조건을 만족하는 그룹만 선택
# 매출 합계가 200 이상인 그룹만 필터링
filtered = df.groupby('지역').filter(lambda x: x['매출'].sum() > 200)
print(filtered)

 

728x90

관련글 더보기