在R中将数据帧的完整联接列表加速为一个数据帧

在R中将数据帧的完整联接列表加速为一个数据帧,r,dataframe,R,Dataframe,我有100000个数据帧的列表,希望将它们完全连接到一个数据帧中。 我试过减少,但速度很慢。这是我的代码示例: dfs <- list( df1 = data.frame(a = 1:3, b = c("a", "b", "c")), df2 = data.frame(c = 4:6, b = c("a", "c", "d")), df3 = data.frame(d = 7:9, b = c("b", "c", "e")) ) z <- dfs %>%

我有100000个数据帧的列表,希望将它们完全连接到一个数据帧中。 我试过减少,但速度很慢。这是我的代码示例:

dfs <- list(
    df1 = data.frame(a = 1:3, b = c("a", "b", "c")),
    df2 = data.frame(c = 4:6, b = c("a", "c", "d")),
    df3 = data.frame(d = 7:9, b = c("b", "c", "e"))
)
z <- dfs %>%
    Reduce(function(dtf1,dtf2) dplyr::full_join(dtf1,dtf2), .)

dfs您的意思是
Reduce
而不是
Replace
在该数量的数据上可能重复完整连接。帧可能会变得非常非常大,这取决于数据结构。我将代码用作优化问题的示例,因为我必须处理大量数据帧。我也有建议,但它在大列表中运行得非常慢。非常慢是什么意思?5分钟?50分钟?5小时?你的机器有足够的内存吗?