R에서 일일 데이터를 월간 및 연간 데이터로 집계하는 방법


때로는 R에서 일일 데이터를 주간, 월간 또는 연간 데이터로 집계하고 싶을 수도 있습니다.

이 튜토리얼에서는 lubridatedplyr 패키지를 사용하여 이를 쉽게 수행하는 방법을 설명합니다.

예: R에서 일일 데이터 집계

연속 100일 동안 품목의 일일 판매량을 보여주는 다음과 같은 데이터 프레임이 R에 있다고 가정합니다.

 #make this example reproducible
set.seed(1)

#create data frame
df <- data.frame(date = as.Date (" 2020-12-01 ") + 0:99,
                 sales = runif (100, 20, 50))

#view first six rows
head(df)

        dirty date
1 2020-12-01 27.96526
2 2020-12-02 31.16372
3 2020-12-03 37.18560
4 2020-12-04 47.24623
5 2020-12-05 26.05046
6 2020-12-06 46.95169

이 데이터를 집계하려면 다음 구문을 사용하는 lubridate 패키지의 Floor_date() 함수를 사용할 수 있습니다.

 floor_date (x, unit)

금:

  • x: 날짜 객체의 벡터입니다.
  • 단위: 반올림할 시간 단위입니다. 옵션에는 초, 분, 시간, 일, 주, 월, 격월, 분기, 반년 및 연도가 포함됩니다.

다음 코드 조각은 dplyr 패키지의 group_by()summary() 함수와 함께 이 함수를 사용하여 주, 월, 연도별 평균 판매량을 찾는 방법을 보여줍니다.

주당 평균 판매량

 library (lubridate)
library (dplyr)

#round dates down to week
df$week <- floor_date (df$date, " week ")

#find average sales per week
df %>%
  group_by (week) %>%
  summarize (mean = mean (sales))

# A tibble: 15 x 2
   week means
        
 1 2020-11-29 33.9
 2 2020-12-06 35.3
 3 2020-12-13 39.0
 4 2020-12-20 34.4
 5 2020-12-27 33.6
 6 2021-01-03 35.9
 7 2021-01-10 37.8
 8 2021-01-17 36.8
 9 2021-01-24 32.8
10 2021-01-31 33.9
11 2021-02-07 34.1
12 2021-02-14 41.6
13 2021-02-21 31.8
14 2021-02-28 35.2
15 2021-03-07 37.1

월 평균 매출

 library (lubridate)
library (dplyr)

#round dates down to week
df$month <- floor_date (df$date, " month ")

#find average sales by month
df %>%
  group_by (month) %>%
  summarize (mean = mean (sales))

# A tibble: 4 x 2
  month mean
       
1 2020-12-01 35.3
2 2021-01-01 35.6
3 2021-02-01 35.2
4 2021-03-01 37.0

연간 평균 매출

 library (lubridate)
library (dplyr)

#round dates down to week
df$year <- floor_date (df$date, " year ")

#find average sales by month
df %>%
  group_by (year) %>%
  summarize (mean = mean (sales))

# A tibble: 2 x 2
  year means
       
1 2020-01-01 35.3
2 2021-01-01 35.7

평균을 기준으로 집계하기로 선택했지만 중앙값, 모드, 최대값, 최소값 등 원하는 요약 통계를 사용할 수 있습니다.

추가 리소스

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

R에서 그룹당 평균을 계산하는 방법
R에서 누적 합계를 계산하는 방법
R에서 시계열을 그리는 방법

의견을 추가하다

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