2014-02-07 31 views
0

我想要一個矩陣,即n列長。R:每列有2列的n列矩陣

n <- 3 

我想要的組合是1和-1

c <- c(1,-1) 

,讓作爲行數:

r <- 2^n 

,所以你會做的0與這些昏暗的矩陣因此:

mm <- matrix(0, r, n) 

現在, 如何用1和-1填充它。的每一種組合。 如果n = 2,我們應該得到:

{(1,1),(1,-1),( - 1,1),(1,-1)}

等。

什麼是最好的方式來實現這一目標?

回答

1
n <- 2 
x <- c(-1, 1) 
expand.grid(rep(list(x), n)) 

## Var1 Var2 
## 1 -1 -1 
## 2 1 -1 
## 3 -1 1 
## 4 1 1 

n <- 3 
expand.grid(rep(list(x), n)) 

## Var1 Var2 Var3 
## 1 -1 -1 -1 
## 2 1 -1 -1 
## 3 -1 1 -1 
## 4 1 1 -1 
## 5 -1 -1 1 
## 6 1 -1 1 
## 7 -1 1 1 
## 8 1 1 1