[14-01-15]

4.5 참조를 사용한 데이터 수정

library(data.table)
m = matrix(1, nrow = 1000, ncol = 100)
DF <- as.data.frame(m)
DT <- as.data.table(m)

system.time({
    for (i in 1:1000) {
        DF[i, 1] <- i
    }
})
##    user  system elapsed 
##    2.65    0.03    2.68
system.time(for (i in 1:1000) {
    DT[i, `:=`(v1, i)]
})
##    user  system elapsed 
##    0.44    0.00    0.44

4.6 rbindlist

일단 데이터 프레임을 만든다.

library(plyr)
x <- ldply(1:10000, function(x) {
    data.frame(val = x, va12 = 2 * x, val3 = 2/x, val4 = 4 * x, val5 = 4/x)
})

데이터 테이블의 리스트를 만든후 rbindlist로 합친다.

x <- llply(1:10000, function(x) {
    data.frame(val = x, va12 = 2 * x, val3 = 2/x, val4 = 4 * x, val5 = 4/x)
})
x <- rbindlist(x)