5
วิธีใดเร็วที่สุดในการรวม / เข้าร่วม data.frames ใน R?
ตัวอย่างเช่น (ไม่แน่ใจว่าตัวอย่างที่เป็นตัวแทนส่วนใหญ่): N <- 1e6 d1 <- data.frame(x=sample(N,N), y1=rnorm(N)) d2 <- data.frame(x=sample(N,N), y2=rnorm(N)) นี่คือสิ่งที่ฉันมีจนถึงตอนนี้: d <- merge(d1,d2) # 7.6 sec library(plyr) d <- join(d1,d2) # 2.9 sec library(data.table) dt1 <- data.table(d1, key="x") dt2 <- data.table(d2, key="x") d <- data.frame( dt1[dt2,list(x,y1,y2=dt2$y2)] ) # 4.9 sec library(sqldf) sqldf() sqldf("create index ix1 on …