R에서 그룹별 백분율을 계산하는 방법(예제 포함)


다음 구문을 사용하여 R에서 그룹별 백분율을 계산할 수 있습니다.

 library (dplyr)

df %>%
  group_by(group_var) %>%
  mutate(percent = value_var/sum(value_var))

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

예: R에서 그룹별 백분율 계산

서로 다른 팀의 농구 선수들이 득점한 점수를 보여주는 다음 데이터 프레임이 있다고 가정합니다.

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'),
                 points=c(12, 29, 34, 14, 10, 11, 7, 36, 34, 22))

#view data frame
df

   team points
1 to 12
2 to 29
3 to 34
4 to 14
5 to 10
6 B 11
7 B 7
8 B 36
9 B 34
10 B 22

다음 코드를 사용하여 팀별로 그룹화된 총 득점 백분율을 표시하는 데이터 프레임에 새 열을 만들 수 있습니다.

 library (dplyr)

#calculate percentage of points scored, grouped by team
df %>%
  group_by(team) %>%
  mutate(percent = points/sum(points))

# A tibble: 10 x 3
# Groups: team [2]
   team points percent
        
 1 to 12 0.121 
 2 A 29 0.293 
 3 A 34 0.343 
 4 A 14 0.141 
 5 A 10 0.101 
 6 B 11 0.1   
 7 B 7 0.0636
 8 B 36 0.327 
 9 B 34 0.309 
10 B 22 0.2 

백분율 열은 해당 선수가 팀에서 득점한 총점의 백분율을 나타냅니다.

예를 들어 A팀 선수는 총 99 점을 획득했습니다.

따라서 데이터 프레임의 첫 번째 행에 있는 12 점을 획득한 플레이어는 A팀 총점의 12/99 = 12.12% 를 획득했습니다.

마찬가지로 데이터베이스에서 29 점을 획득한 두 번째 행 플레이어는 A팀 총점의 29/99 = 29.29% 를 기록했습니다.

등등.

추가 리소스

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

R에서 그룹별로 고유한 값을 계산하는 방법
R에서 그룹별 요약 통계를 계산하는 방법
R에서 그룹별 합계를 계산하는 방법

의견을 추가하다

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