강좌 소개

R의 data.table로 데이터 조작하기

Matt Dowle and Arun Srinivasan

Instructors, DataCamp

data.table이란?

  • 향상된 data.frame
    • data.frame을 상속하고 확장
  • 열 기반 데이터 구조
  • 모든 열은 같은 길이여야 하며, 서로 다른 타입 가능
R의 data.table로 데이터 조작하기

왜 data.table을 사용하는가?

  • 간결하고 일관된 문법
    • , , 그룹 개념으로 사고
    • 각각에 대한 플레이스홀더 제공
# General form of data.table syntax
DT[i, j, by]
   |  |  |
   |  |  --> grouped by what?
   |  -----> what to do?
   --------> on which rows?
R의 data.table로 데이터 조작하기

벤치마크

R의 data.table로 데이터 조작하기

왜 data.table을 사용하는가?

R의 data.table로 데이터 조작하기

data.table 생성하기

데이터 테이블 생성 방법 세 가지:

  • data.table()
  • as.data.table()
  • fread()
R의 data.table로 데이터 조작하기

data.table 생성하기

library(data.table)
x_df <- data.frame(id = 1:2, name = c("a", "b"))
x_df
id name
 1    a
 2    b
x_dt <- data.table(id = 1:2, name = c("a", "b"))
x_dt
id name
 1    a
 2    b
R의 data.table로 데이터 조작하기

data.table 생성하기

y <- list(id = 1:2, name = c("a", "b"))
y
$id
1 2
$name
"a" "b"
x <- as.data.table(y)
x
id name
 1    a
 2    b
R의 data.table로 데이터 조작하기

data.table과 data.frame (I)

data.table은 data.frame 이기도 합니다 ...

x <- data.table(id = 1:2, 
                name = c("a", "b"))
x
id name
 1    a
 2    b
class(x)
"data.table" "data.frame"
R의 data.table로 데이터 조작하기

data.table과 data.frame (II)

data.frame 조회 함수는 data.table에서도 동작합니다

nrow(x)
2
ncol(x)
2
dim(x)
2 2
R의 data.table로 데이터 조작하기

data.table과 data.frame (III)

data.table은 문자형 열을 팩터로 자동 변환하지 않습니다

x_df <- data.frame(id = 1:2, name = c("a", "b"))
class(x_df$name)
"factor"
x_dt <- data.table(id = 1:2, name = c("a", "b"))
class(x_dt$name)
"character"
R의 data.table로 데이터 조작하기

data.table과 data.frame (IV)

행 이름을 설정하거나 사용하지 않습니다

rownames(x_dt) <- c("R1", "R2")
x_dt
   id name
1:  1    a
2:  2    b
R의 data.table로 데이터 조작하기

연습해 봅시다!

R의 data.table로 데이터 조작하기

Preparing Video For Download...