Dplyr을 사용하여 여러 열의 합계를 계산하는 방법


dplyr을 사용하여 데이터 프레임에 있는 여러 열의 값을 합산하려면 다음 방법을 사용할 수 있습니다.

방법 1: 모든 열의 합계

 df %>%
  mutate(sum = rowSums(., na. rm = TRUE ))

방법 2: 모든 숫자 열의 합계

 df %>%
  mutate(sum = rowSums(across(where(is. numeric )), na. rm = TRUE ))

방법 3: 특정 열에 대한 합계

 df %>%
  mutate(sum = rowSums(across(c(col1, col2))))

다음 예에서는 다양한 게임에서 다양한 농구 선수가 득점한 점수에 대한 정보가 포함된 다음 데이터 프레임과 함께 각 메서드를 사용하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (game1=c(22, 25, 29, 13, 22, 30),
                 game2=c(12, 10, 6, 6, 8, 11),
                 game3=c(NA, 15, 15, 18, 22, 13))

#view data frame
df

  game1 game2 game3
1 22 12 NA
2 25 10 15
3 29 6 15
4 13 6 18
5 22 8 22
6 30 11 13

예시 1: 모든 열의 합계

다음 코드는 데이터 프레임의 모든 열 값의 합계를 계산하는 방법을 보여줍니다.

 library (dplyr)

#sum values across all columns
df %>%
  mutate(total_points = rowSums(., na. rm = TRUE ))

game1 game2 game3 total_points
1 22 12 NA 34
2 25 10 15 50
3 29 6 15 50
4 13 6 18 37
5 22 8 22 52
6 30 11 13 54

예 2: 모든 숫자 열의 합계

다음 코드는 데이터 프레임의 모든 숫자 열 값의 합계를 계산하는 방법을 보여줍니다.

 library (dplyr)

#sum values across all numeric columns
df %>%
  mutate(total_points = rowSums(across(where(is. numeric )), na. rm = TRUE ))

game1 game2 game3 total_points
1 22 12 NA 34
2 25 10 15 50
3 29 6 15 50
4 13 6 18 37
5 22 8 22 52
6 30 11 13 54

예시 3: 특정 열에 대한 합계

다음 코드는 game1game2 열의 값 합계만 계산하는 방법을 보여줍니다.

 library (dplyr)

#sum values across game1 and game2 only
df %>%
  mutate(first2_sum = rowSums(across(c(game1, game2))))

  game1 game2 game3 first2_sum
1 22 12 NA 34
2 25 10 15 35
3 29 6 15 35
4 13 6 18 19
5 22 8 22 30
6 30 11 13 41

추가 리소스

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

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

의견을 추가하다

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