rbind.fill 的最快替代方案
Fastest alternative to rbind.fill
rbind.fill 最快的替代方法是什么?我有一个数据框列表(都具有相同的列名),并且想创建一个在每个数据框(或与此等效的东西)上使用 rbind
的大数据框。任何解决方案,包括 tidyverse
都是好的。
如果数据帧在列表中,基本的R Reduce 函数可以将它们全部rbind。例如,
df1 <- mtcars
df2 <- df1
df3 <- df2
mylist <- list(df1, df2, df3)
rbindall <- Reduce(rbind, mylist)
在 Ashwin Malshé 于 2018 年对 rbind
、bind_rows
和 rbindlist
进行的速度比较中 https://rstudio-pubs-static.s3.amazonaws.com/406521_7fc7b6c1dc374e9b8860e15a699d8bb0.html
升序排列:
rbindlist
从 data.table
是最快的。它比 dplyr
.
的 bind_rows
快两倍以上
bind_rows
来自 dplyr
,比来自 base R
的 rbind
快 10 倍以上
rbind
base R
3个模拟中肯定有一些极值,但中位数接近均值,表明极值的影响很小!
rbind.fill 最快的替代方法是什么?我有一个数据框列表(都具有相同的列名),并且想创建一个在每个数据框(或与此等效的东西)上使用 rbind
的大数据框。任何解决方案,包括 tidyverse
都是好的。
如果数据帧在列表中,基本的R Reduce 函数可以将它们全部rbind。例如,
df1 <- mtcars
df2 <- df1
df3 <- df2
mylist <- list(df1, df2, df3)
rbindall <- Reduce(rbind, mylist)
在 Ashwin Malshé 于 2018 年对 rbind
、bind_rows
和 rbindlist
进行的速度比较中 https://rstudio-pubs-static.s3.amazonaws.com/406521_7fc7b6c1dc374e9b8860e15a699d8bb0.html
升序排列:
的rbindlist
从data.table
是最快的。它比dplyr
.bind_rows
快两倍以上
的bind_rows
来自dplyr
,比来自base R
rbind
快 10 倍以上rbind
base R
3个模拟中肯定有一些极值,但中位数接近均值,表明极值的影响很小!