더북(TheBook)

31.13 그룹화하기: GROUP 알고리즘

그룹(GROUP) 알고리즘은 반별 총점이나 평균, 제품별 판매금액의 합 같은 그룹별로 구분되는 데이터의 통계를 산출할 때 사용합니다. 그룹 알고리즘은 데이터가 미리 정렬되어 있어야 합니다.

코드 관점으로 보면 그룹 알고리즘은 2차원 배열 형태의 리스트에서 특정 속성을 키로 잡아 데이터를 그룹화할 때 사용합니다. 예를 들어 다음과 같은 상품 이름(Name)과 수량(Quantity) 형태의 원본 데이터가 있다고 가정하겠습니다.

“RADIO”, 3

“RADIO”, 2

“TV”, 1

“DVD”, 4

 

이를 상품 이름으로 그룹화하면 다음과 같이 나옵니다.

“DVD”, 4

“TV”, 1

“RADIO”, 5

 

그룹 알고리즘은 정렬된 데이터를 기준으로 수량을 SUM하는 형태가 가장 기본입니다. 데이터 흐름을 그림으로 표현하면 다음과 같습니다.

▲ 그림 31-4 그룹 알고리즘 처리 단계

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.