R에서 그룹당 누적 합계를 계산하는 방법


다음 방법을 사용하여 R에서 그룹당 누적 합계를 계산할 수 있습니다.

방법 1: 기본 R 사용

 df$cum_sum <- ave(df$values_var, df$group_var, FUN=cumsum)

방법 2: dplyr 사용

 library (dplyr)

df %>% group_by(group_var) %>% mutate(cum_sum = cumsum(values_var))

방법 3: data.table 사용

 library (data.table)

setDT(df)[, cum_sum := cumsum(values_var), group_var] 

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

 #create data frame
df <- data. frame (store=rep(c(' A ', ' B ', ' C '), each= 4 ),
                 sales=c(3, 4, 4, 2, 5, 8, 9, 7, 6, 8, 3, 2))

#view data frame
df

   blind sales
1 to 3
2 to 4
3 to 4
4 to 2
5 B 5
6 B 8
7 B 9
8 B 7
9 C 6
10 C 8
11 C 3
12 C 2

예시 1: R 기준을 사용하여 그룹당 누적 합계 계산

다음 코드는 R 데이터베이스 ave() 함수를 사용하여 매장 별로 그룹화된 매출 누적 합계를 계산하는 방법을 보여줍니다.

 #add column to show cumulative sales by store
df$cum_sales <- ave(df$sales, df$store, FUN=cumsum)

#view updated data frame
df

   store sales cum_sales
1 to 3 3
2 to 4 7
3 to 4 11
4 to 2 13
5 B 5 5
6 B 8 13
7 B 9 22
8 B 7 29
9 C 6 6
10 C 8 14
11 C 3 17
12 C 2 19

cum_sales 라는 새 열은 매장 별로 그룹화된 매출 누적 합계를 표시합니다.

예시 2: dplyr을 사용하여 그룹당 누적 합계 계산

다음 코드는 R의 dplyr 패키지에 있는 다양한 함수를 사용하여 매장 별로 그룹화된 매출 누적 합계를 계산하는 방법을 보여줍니다.

 library (dplyr)

#add column to show cumulative sales by store
df %>% group_by(store) %>% mutate(cum_sales = cumsum(sales))

#view updated data frame
df

# A tibble: 12 x 3
# Groups: store [3]
   store sales cum_sales
         
 1 to 3 3
 2 to 4 7
 3 to 4 11
 4 to 2 13
 5 B 5 5
 6 B 8 13
 7 B 9 22
 8 B 7 29
 9 C 6 6
10 C 8 14
11 C 3 17
12 C 2 19

cum_sales 라는 새 열은 매장 별로 그룹화된 매출 누적 합계를 표시합니다.

예시 3: data.table을 사용하여 그룹별 누적 합계 계산

다음 코드는 R의 data.table 패키지에 있는 다양한 함수를 사용하여 매장 별로 그룹화된 매출 누적 합계를 계산하는 방법을 보여줍니다.

 library (data.table)

#add column to show cumulative sales by store
setDT(df)[, cum_sales := cumsum(sales), store] 

#view updated data frame
df

    store sales cum_sales
 1: A 3 3
 2: A 4 7
 3: A 4 11
 4: A 2 13
 5: B 5 5
 6: B 8 13
 7: B 9 22
 8: B 7 29
 9: C 6 6
10: C 8 14
11: C 3 17
12: C 2 19

cum_sales 라는 새 열은 매장 별로 그룹화된 매출 누적 합계를 표시합니다.

참고 : 세 가지 방법 모두 동일한 결과를 생성합니다. 그러나 dplyr 및 data.table 메서드는 매우 큰 데이터 프레임으로 작업할 때 더 빠른 경향이 있습니다.

추가 리소스

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

R에서 그룹별 합계를 계산하는 방법
R에서 그룹당 평균을 계산하는 방법
R에서 그룹별 표준 편차를 계산하는 방법

의견을 추가하다

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