2013-01-03 21 views
4

我試圖根據多項式框架生成下面的矩陣。例如,如果我有三列,我會得到:使用後的反向字典順序expand.grid

0 0 0 
1 0 0 
0 1 0 
0 0 1 
1 1 0 
1 0 1 
0 1 1 
1 1 1 

但是,我想要更多的列。我知道我可以使用expand.grid,如:

u <- list(0:1) 
expand.grid(rep(u,3)) 

但是,它返回我想要的順序錯誤:

0 0 0 
1 0 0 
0 1 0 
1 1 0 
0 0 1 
1 0 1 
0 1 1 
1 1 1 

任何想法?謝謝。

回答

4

您可以重新排列行的預期輸出匹配:

u <- list(0:1) 
g <- expand.grid(rep(u,3)) 
g <- g[order(rowSums(g)), ]