Dplyr을 사용하여 여러 열을 요약하는 방법


dplyr을 사용하여 데이터 프레임의 여러 열을 요약하려면 다음 방법을 사용할 수 있습니다.

방법 1: 모든 열 요약

 #summarize mean of all columns
df %>%
  group_by(group_var) %>%
  summarise(across(everything(), mean, na. rm = TRUE ))

방법 2: 특정 열 요약

 #summarize mean of col1 and col2 only
df %>%
  group_by(group_var) %>%
  summarise(across(c(col1, col2), mean, na. rm = TRUE ))

방법 3: 모든 숫자 열 요약

 #summarize mean and standard deviation of all numeric columns
df %>%
  group_by(group_var) %>%
  summarise(across(where(is. numeric ), list(mean=mean, sd=sd), na. rm = TRUE ))

다음 예에서는 다음 데이터 프레임에서 각 메서드를 사용하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 points=c(99, 90, 86, 88, 95, 90),
                 assists=c(33, 28, 31, 39, 34, 25),
                 rebounds=c(NA, 28, 24, 24, 28, 19))

#view data frame
df

  team points assists rebounds
1 A 99 33 NA
2 A 90 28 28
3 A 86 31 24
4 B 88 39 24
5 B 95 34 28
6 B 90 25 19

예시 1: 모든 열 요약

다음 코드는 모든 열의 평균을 요약하는 방법을 보여줍니다.

 library (dplyr)

#summarize mean of all columns, grouped by team
df %>%
  group_by(team) %>%
  summarise(across(everything(), mean, na. rm = TRUE ))

# A tibble: 2 x 4
  team points assists rebounds
           
1 A 91.7 30.7 26  
2 B 91 32.7 23.7

예시 2: 특정 열 요약

다음 코드는 포인트리바운드 열의 평균을 요약하는 방법을 보여줍니다.

 library (dplyr)

#summarize mean of points and rebounds, grouped by team
df %>%
  group_by(team) %>%
  summarise(across(c(points, rebounds), mean, na. rm = TRUE ))

# A tibble: 2 x 3
  team points rebounds
        
1 A 91.7 26  
2 B 91 23.7

예 3: 모든 숫자 열 요약

다음 코드는 데이터 프레임에 있는 모든 숫자 열의 평균 및 표준 편차를 요약하는 방법을 보여줍니다.

 library (dplyr)

#summarize mean and standard deviation of all numeric columns
df %>%
  group_by(team) %>%
  summarise(across(where(is. numeric ), list(mean=mean, sd=sd), na. rm = TRUE ))

# A tibble: 2 x 7
  team points_mean points_sd assists_mean assists_sd rebounds_mean rebounds_sd
                                            
1 A 91.7 6.66 30.7 2.52 26 2.83
2 B 91 3.61 32.7 7.09 23.7 4.51

출력에는 데이터 프레임에 있는 모든 숫자 변수의 평균 및 표준 편차가 표시됩니다.

이 예에서는 list() 함수를 사용하여 계산하려는 여러 요약 통계를 나열했습니다.

참고 : 각 예에서는 dplyr across() 함수를 사용했습니다. 이 기능에 대한 전체 문서는 여기에서 찾을 수 있습니다.

추가 리소스

다음 튜토리얼에서는 dplyr을 사용하여 다른 일반적인 기능을 수행하는 방법을 설명합니다.

dplyr을 사용하여 행을 삭제하는 방법
dplyr을 사용하여 행을 정렬하는 방법
dplyr을 사용하여 여러 조건으로 필터링하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다