Dplyr을 사용하여 누적 합계를 계산하는 방법


dplyr 패키지를 사용하여 R에서 열의 누계를 계산하려면 다음 방법을 사용할 수 있습니다.

방법 1: 열의 누적합 계산

 df %>% mutate(cum_sum = cumsum(var1))

방법 2: 그룹별 누적합 계산

 df %>% group_by(var1) %>% mutate(cum_sum = cumsum(var2))

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

예시 1: dplyr을 사용하여 누적 합계 계산

R에 다음과 같은 데이터 프레임이 있다고 가정합니다.

 #create dataset
df <- data. frame (day=c(1, 2, 3, 4, 5, 6, 7, 8),
                 sales=c(7, 12, 10, 9, 9, 11, 18, 23))

#view dataset
df

  day sales
1 1 7
2 2 12
3 3 10
4 4 9
5 5 9
6 6 11
7 7 18
8 8 23

다음 코드를 사용하여 “sales” 열 값의 누적 합계를 포함하는 새 열을 만들 수 있습니다.

 library (dplyr)

#calculate cumulative sum of sales
df %>% mutate(cum_sales = cumsum(sales))

  day sales cum_sales
1 1 7 7
2 2 12 19
3 3 10 29
4 4 9 38
5 5 9 47
6 6 11 58
7 7 18 76
8 8 23 99

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

R에 다음과 같은 데이터 프레임이 있다고 가정합니다.

 #create dataset
df <- data. frame (store=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 day=c(1, 2, 3, 4, 1, 2, 3, 4),
                 sales=c(7, 12, 10, 9, 9, 11, 18, 23))

#view dataset
df

  store day sales
1 To 1 7
2 to 2 12
3 to 3 10
4 to 4 9
5 B 1 9
6 B 2 11
7 B 3 18
8 B 4 23

다음 코드를 사용하여 “매장” 열로 그룹화된 “판매” 열 값의 누적 합계를 포함하는 새 열을 만들 수 있습니다.

 library (dplyr)

#calculate cumulative sum of sales by store
df %>% group_by(store) %>% mutate(cum_sales = cumsum(sales))

# A tibble: 8 x 4
# Groups: store[2]
  store day sales cum_sales   
1 To 1 7 7
2 A 2 12 19
3 To 3 10 29
4 A 4 9 38
5 B 1 9 9
6 B 2 11 20
7 B 3 18 38
8 B 4 23 61

추가 리소스

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

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

의견을 추가하다

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