2013-01-02 56 views
1

我有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×21列表矩陣。如何將combn結果的每個列元素合併到單個數據框(1 x 21)以便對新數據集進行一些進一步處理?

回答

2

你得到的data.frame

ll <- lapply(1:7, function(i) do.call(rbind, combn(Dataset, i))) 

的列表,你可以得到一個大data.frame

big.l <- do.call(rbind,ll)