Меня особенно интересует эффективное решение для связывания двух фреймов данных с одинаковыми столбцами в одном и том же порядке. Я пытаюсь оставаться в рамках tibble / dplyr, чтобы избежать постоянного преобразования объектов в разные классы, но я не могу найти метод, близкий к производительности data.table
.
Пример:
require(tidyverse)
require(data.table)
# create tibble and data.table
tb2 <- tb <- as_tibble(matrix(data=rep(1:5, 20000), ncol=20000, nrow=5, dimnames=list(NULL, paste0('c',1:20000))))
dt2 <- dt <- as.data.table(tb)
system.time(temp1 <- rbind(tb, tb2)) # 0.2s
system.time(temp2 <- bind_rows(tb, tb2)) # 31s
system.time(temp3 <- rbind(dt, dt2)) # 0.02s
Есть ли в base
или dplyr
что-либо, что соответствует производительности data.table в этом случае?