R에서 피벗 테이블을 빠르게 만드는 방법
Excel에서 피벗 테이블은 데이터를 그룹화하고 요약하는 쉬운 방법을 제공합니다.
예를 들어 Excel에 다음 데이터 세트가 있는 경우 피벗 테이블을 사용하여 지역별 총 매출을 빠르게 요약할 수 있습니다.
이는 우리에게 다음을 알려줍니다.
- A 지역에는 총 51개의 매출이 있었습니다.
- B 지역에는 총 85개의 매출이 있었습니다.
- C지역 총 매출 140개 달성
또는 지역별 평균 매출과 같은 다른 측정항목으로 요약할 수도 있습니다.
dplyr 패키지의 group_by() 및 summary() 함수를 사용하여 R에서 유사한 피벗 테이블을 빠르게 만들 수 있다는 것이 밝혀졌습니다.
이 튜토리얼에서는 이를 수행하는 방법에 대한 몇 가지 예를 제공합니다.
예: R에서 피벗 테이블 만들기
먼저 이전 Excel 예제에서 사용한 것과 동일한 데이터 세트를 R에서 생성해 보겠습니다.
#create data frame df <- data. frame (region=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C'), device=c('X', 'X', 'Y', 'X', 'Y', 'Y', 'X', 'X', 'Y', 'Y'), sales=c(12, 18, 21, 22, 34, 29, 38, 36, 34, 32)) #view data frame df region device sales 1AX 12 2AX18 3 AY 21 4 BX22 5 BY 34 6 BY 29 7 CX 38 8CX36 9 CY 34 10 CY 32
다음으로 dplyr 패키지를 로드하고 group_by() 및 summary() 함수를 사용하여 지역별로 그룹화하고 지역별 매출 합계를 찾아보겠습니다.
library (dplyr) #find sum of sales by region df %>% group_by (region) %>% summarize (sum_sales = sum (sales)) # A tibble: 3 x 2 region sum_sales 1 to 51 2 B 85 3 C 140
이 숫자가 Excel 소개 예제에 표시된 숫자와 일치하는 것을 볼 수 있습니다.
지역별 평균 매출도 계산할 수 있습니다.
#find average sales by region df %>% group_by (region) %>% summarize (mean_sales = mean (sales)) # A tibble: 3 x 2 region mean_sales 1 to 17 2 B 28.3 3 C 35
다시 말하지만, 이 숫자는 이전 Excel 예제에 표시된 숫자와 일치합니다.
여러 변수를 기준으로 그룹화할 수도 있습니다. 예를 들어 지역 및 기기 유형별로 그룹화된 매출 합계를 찾을 수 있습니다.
#find sum of sales by region and device type df %>% group_by (region, device) %>% summarize (sum_sales = sum (sales)) # A tibble: 6 x 3 # Groups: region [3] region device sum_sales 1AX30 2 AY 21 3 BX22 4 BY 63 5 CX 74 6 CY 66
추가 리소스
R에서 VLOOKUP(Excel과 유사)을 수행하는 방법
전체 가이드: R에서 데이터를 그룹화하고 요약하는 방법