R에서 sumif 함수를 실행하는 방법


종종 R 데이터 프레임에서 특정 기준을 충족하는 행의 합계 찾고 싶을 수도 있습니다. 다행히도 다음 기본 구문을 사용하면 이 작업을 쉽게 수행할 수 있습니다.

 aggregate(col_to_sum ~ col_to_group_by, data=df, sum )

다음 예에서는 다음 데이터 프레임에서 이 구문을 사용하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (team=c('a', 'a', 'b', 'b', 'b', 'c', 'c'),
                 pts=c(5, 8, 14, 18, 5, 7, 7),
                 rebs=c(8, 8, 9, 3, 8, 7, 4),
                 blocks=c(1, 2, 2, 1, 0, 4, 1))

#view data frame
df

  team pts rebs blocks
1 to 5 8 1
2 to 8 8 2
3 b 14 9 2
4 b 18 3 1
5 b 5 8 0
6 c 7 7 4
7 c 7 4 1

예 1: 열에서 SUMIF 함수 실행

다음 코드는 각 팀의 점수 합계를 찾는 방법을 보여줍니다.

 aggregate(pts ~ team, data=df, sum )

  team pts
1 to 13
2 b 37
3 v 14

예 2: 여러 열에서 SUMIF 함수 실행

다음 코드는 각 팀의 포인트와 리바운드 합계를 찾는 방법을 보여줍니다.

 aggregate(cbind(pts, rebs) ~ team, data=df, sum )

team pts rebs
1 to 13 16
2 b 37 20
3 c 14 11

예 3: 모든 열에 대해 SUMIF 함수 실행

다음 코드는 각 팀의 데이터 프레임에 있는 모든 열의 합계를 찾는 방법을 보여줍니다.

 aggregate(.~team, data=df, sum )

  team pts rebs blocks
1 to 13 16 3
2 b 37 20 3
3 c 14 11 5

참고: 점( . )은 R에서 “모든” 열을 나타내는 데 사용됩니다.

추가 리소스

R에서 COUNTIF 함수를 실행하는 방법
R의 특정 열을 합산하는 방법
R에서 특정 행을 합산하는 방법

의견을 추가하다

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