R에서 시간별로 데이터를 그룹화하는 방법(예제 포함)


다음 구문을 사용하여 데이터를 시간별로 그룹화하고 R에서 집계를 수행할 수 있습니다.

 library (dplyr)
library (lubridate)

#group by hours in time column and calculate sum of sales
df %>%
  group_by(time=floor_date(time, ' 1 hour ')) %>%
  summarize(sum_sales=sum(sales))

이 특정 예에서는 시간별 값을 Hour 라는 열로 그룹화한 다음 각 시간에 대한 Sales 열의 값 합계를 계산합니다.

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

예: R에서 시간별로 데이터 그룹화

매장의 하루 중 다양한 시간대에 발생한 판매 건수를 표시하는 다음 데이터 프레임이 있다고 가정해 보겠습니다.

 #create data frame
df <- data. frame (time=as. POSIXct (c('2022-01-01 01:14:00', '2022-01-01 01:24:15',
                                 '2022-01-01 02:52:19', '2022-01-01 02:54:00',
                                 '2022-01-01 04:05:10', '2022-01-01 05:35:09')),
                 sales=c(18, 20, 15, 14, 10, 9))

#view data frame
df

                 time sales
1 2022-01-01 01:14:00 18
2 2022-01-01 01:24:15 20
3 2022-01-01 02:52:19 15
4 2022-01-01 02:54:00 14
5 2022-01-01 04:05:10 10
6 2022-01-01 05:35:09 9

다음 구문을 사용하여 시간 열을 시간별로 그룹화하고 각 시간의 매출 합계를 계산할 수 있습니다.

 library (dplyr)
library (lubridate)

#group by hours in time column and calculate sum of sales
df %>%
  group_by(time=floor_date(time, ' 1 hour ')) %>%
  summarize(sum_sales=sum(sales))

`summarise()` ungrouping output (override with `.groups` argument)
# A tibble: 4 x 2
  time sum_sales
                    
1 2022-01-01 01:00:00 38
2 2022-01-01 02:00:00 29
3 2022-01-01 04:00:00 10
4 2022-01-01 05:00:00 9

결과에서 우리는 다음을 볼 수 있습니다:

  • 첫 시간 동안 총 38개의 판매가 이루어졌습니다.
  • 두 번째 시간에는 총 29개의 판매가 이루어졌습니다.
  • 4시간 동안 총 10개의 판매가 이루어졌습니다.
  • 5시간 동안 총 9 개의 판매가 이루어졌습니다.

또 다른 집계를 수행할 수도 있습니다.

예를 들어 시간당 평균 판매량을 계산할 수 있습니다.

 library (dplyr)
library (lubridate)

#group by hours in time column and calculate mean of sales
df %>%
  group_by(time=floor_date(time, ' 1 hour ')) %>%
  summarize(mean_sales=mean(sales))

`summarise()` ungrouping output (override with `.groups` argument)
# A tibble: 4 x 2
  time mean_sales
                     
1 2022-01-01 01:00:00 19  
2 2022-01-01 02:00:00 14.5
3 2022-01-01 04:00:00 10  
4 2022-01-01 05:00:00 9

결과에서 우리는 다음을 볼 수 있습니다:

  • 첫 시간 동안의 평균 판매량은 19 였습니다.
  • 두 번째 시간의 평균 판매량은 14.5 였습니다.
  • 네 번째 시간 동안의 평균 판매량은 10 이었습니다.
  • 다섯 번째 시간 동안의 평균 판매량은 9 였습니다.

자신만의 데이터 프레임을 시간별로 그룹화하고 summary() 함수에서 측정항목을 수정하여 원하는 특정 측정항목을 계산해 보세요.

추가 리소스

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

R에서 월별로 데이터를 그룹화하는 방법
R에서 주별로 데이터를 그룹화하는 방법

의견을 추가하다

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