data.table 캐스팅

R의 data.table로 데이터 결합하기

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

긴 형식 data.table 캐스팅

sales_wide <- dcast(sales_long, quarter ~ year, value.var = "amount")

R의 data.table로 데이터 결합하기

dcast() 함수

dcast()의 일반 형태:

dcast(DT, ids ~ group, value.var = "values")
      |   |     |                   |
      |   |     |                    --> 분리할 열
      |   |      ----------------------> 분리 기준 그룹 레이블
      |    ----------------------------> 식별자로 남길 행
       --------------------------------> 재구조화할 data.table            
R의 data.table로 데이터 결합하기

dcast() 함수

sales_wide <- dcast(sales_long, quarter ~ year, value.var = "amount")

R의 data.table로 데이터 결합하기

여러 값 열 분리

dcast(profit_long, quarter ~ year, value.var = c("revenue", "profit"))

R의 data.table로 데이터 결합하기

다중 행 식별자

여러 열을 행 식별자로 유지:

dcast(sales_long, quarter + season ~ year, value.var = "amount")

R의 data.table로 데이터 결합하기

열 제거

수식 또는 value.var에 포함된 열만 결과에 남습니다:

sales_wide <- dcast(sales_long, quarter ~ year, value.var = "amount")

R의 data.table로 데이터 결합하기

다중 그룹화

여러 그룹 열로 분리:

dcast(sales_long, quarter ~ department + year, value.var = "amount")

R의 data.table로 데이터 결합하기

행렬로 변환

sales_wide <- dcast(sales_long, season ~ year, value.var = "amount")
sales_wide
   season    2015    2016
1: Autumn 3420000 3670000
2: Spring 2950000 3000300
3: Summer 2980700 3120200
4: Winter 3200100 3350000
R의 data.table로 데이터 결합하기

행렬로 변환

as.matrix()는 특정 열을 행렬의 행이름으로 사용할 수 있습니다:

mat <- as.matrix(sales_wide, rownames = "season")
mat
       2015    2016        
Autumn 3420000 3670000
Spring 2950000 3000300
Summer 2980700 3120200
Winter 3200100 3350000
R의 data.table로 데이터 결합하기

연습해 봅시다!

R의 data.table로 데이터 결합하기

Preparing Video For Download...