더북(TheBook)

2 group_by( ) 함수: 행 그룹화하기

group_by() 함수는 지정한 열을 기준으로 행을 그룹화합니다. 쉽게 표현하면 다음 그림과 같습니다.

 

그림 7-3 | group_by() 함수 원리

 

앞서 배운 summarise() 함수와 함께 응용해 보겠습니다. 다음은 예약 테이블(reservation_r)에서 고객 번호(customer_id)로 그룹화하여(group_by) 평균값(mean)을 구하는 예시입니다.

reservation_r %>% group_by(customer_id) %>% summarise(avg = mean(visitor_cnt))

# A tibble: 182 x 2
    customer_id  avg
    <chr>        <dbl>
 1  W1327595     3
 2  W1327803     3
 3  W1328432     4
 4  W1328505     2.83
 5  W1328786     1
 6  W1328985     3
 7  W1328993     4
 8  W1329560     2
 9  W1329954     2
10  W1329962     2
# ... with 172 more rows

* customer_id로 그룹화

* 요약 함수, 여기에서는 customer_id별로 visitor_cnt 평균값을 구합니다.

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