我有7个数据帧,这些数据帧具有不同的行号,但列数相同,我希望生成所有数据帧的所有可能组合。我使用以下方法组合了数组中的所有数据帧:
Dataset <- array(list(), c(1,1,7))
Dataset[[1,1,1]] <- df1
Dataset[[1,1,2]] <- df2
Dataset[[1,1,3]] <- df3
Dataset[[1,1,4]] <- df4
Dataset[[1,1,5]] <- df5
Dataset[[1,1,6]] <- df6
Dataset[[1,1,7]] <- df7
然后我可以使用combn()函数生成组合:
comb1 <- combn(Dataset, 1)
comb2 <- combn(Dataset, 2)
...
comb7 <- combn(Dataset, 7)
例如,comb2将生成一个2 x 21的列表矩阵。如何将combn结果的每个列元素合并到一个数据框(1 x 21),以便对新数据集进行进一步处理?
答案 0 :(得分:2)
您将获得data.frame
列表ll <- lapply(1:7, function(i) do.call(rbind, combn(Dataset, i)))
你可以得到一个大数据框架
big.l <- do.call(rbind,ll)