Dplyr을 사용하여 r에서 요약 통계를 계산하는 방법


dplyr 패키지의 함수를 사용하여 R의 데이터 프레임에 있는 모든 숫자 변수에 대한 요약 통계를 계산하려면 다음 구문을 사용할 수 있습니다.

 library (dplyr)
library (tidyr)

df %>% summarise(across(where(is. numeric ), .fns = 
                     list(min = min,
                          median = median,
                          mean = mean,
                          stdev = sd,
                          q25 = ~quantile(., 0.25 ),
                          q75 = ~quantile(., 0.75 ),
                          max = max))) %>%
  pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))

summarise() 함수는 dplyr 패키지에서 제공되며 변수에 대한 요약 통계를 계산하는 데 사용됩니다.

ivot_longer() 함수는 Tidyr 패키지에서 제공되며 읽기 쉽도록 출력 형식을 지정하는 데 사용됩니다.

이 특정 구문은 데이터 프레임의 각 숫자 변수에 대해 다음 요약 통계를 계산합니다.

  • 최소값
  • 중앙값
  • 평균값
  • 표준 편차
  • 25번째 백분위수
  • 75번째 백분위수
  • 최대값

다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.

예: dplyr을 사용하여 R에서 요약 통계 계산

다양한 농구 선수에 대한 정보를 포함하는 다음과 같은 데이터 프레임이 R에 있다고 가정합니다.

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(12, 15, 19, 14, 24, 25, 39, 34),
                 assists=c(6, 8, 8, 9, 12, 6, 8, 10),
                 rebounds=c(9, 9, 8, 10, 8, 4, 3, 3))

#view data frame
df

  team points assists rebounds
1 to 12 6 9
2 A 15 8 9
3 A 19 8 8
4 A 14 9 10
5 B 24 12 8
6 B 25 6 4
7 B 39 8 3
8 B 34 10 3

다음 구문을 사용하여 데이터 프레임의 각 숫자 변수에 대한 요약 통계를 계산할 수 있습니다.

 library (dplyr)
library (tidyr)

#calculate summary statistics for each numeric variable in data frame
df %>% summarise(across(where(is. numeric ), .fns = 
                     list(min = min,
                          median = median,
                          mean = mean,
                          stdev = sd,
                          q25 = ~quantile(., 0.25 ),
                          q75 = ~quantile(., 0.75 ),
                          max = max))) %>%
  pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))

# A tibble: 3 x 8
  variable min median mean stdev q25 q75 max
             
1 points 12 21.5 22.8 9.74 14.8 27.2 39
2 assists 6 8 8.38 2.00 7.5 9.25 12
3 rebounds 3 8 6.75 2.92 3.75 9 10

  결과에서 우리는 다음을 볼 수 있습니다:

  • 포인트 열의 최소값은 12 입니다.
  • 포인트 열의 중앙값은 21.5 입니다.
  • 포인트 열의 평균값은 22.8 입니다.

등등.

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

추가 리소스

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

데이터를 요약하지만 dplyr을 사용하여 모든 열을 유지하는 방법
dplyr을 사용하여 여러 열을 요약하는 방법
dplyr을 사용하여 표준편차를 계산하는 방법

의견을 추가하다

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