## (Ask again)Show every combination of N-dim vector.

on 24 May 2012

### Daniel Shub (view profile)

Hello, I asked it the day before yesterday but the code some expert told does not work well.

He wrote:

```[C{1:N}]=ndgrid(0:2);
M=reshape(vertcat(C{:}),[],N);
```

However, it does show 3^N rows, but not every combination of N-dim vector of {0,1,2}. Is there another way to show all 3^N combinations and put it in a matrix?

Thank you so much!

Daniel Shub

### Daniel Shub (view profile)

on 24 May 2012

@Sean you can double check your solution with unique(M, 'rows'), and it appears answers are repeated.

Sean de Wolski

### Sean de Wolski (view profile)

on 24 May 2012

huh, your fullfact one is better anyway.

C Zeng

### C Zeng (view profile)

on 25 May 2012

Yes, Sean, your code gives 3^N rows, but they have repeated one. Also I do not understand what does it mean? It seems that it is going to construct a grid in graphics, right? But I want all factorial combinations.

## Products

No products are associated with this question.

### Daniel Shub (view profile)

on 24 May 2012

```x = fullfact([3,3,3])-1
```

EDIT

For a general N

```N = 3;
x = fullfact(repmat(3, N, 1))-1
```

C Zeng

### C Zeng (view profile)

on 25 May 2012

Daniel, I am confused here, your full factorial design works for my purpose. I am asking whether I can set the dimension N, so I do not need to input 3 N times. repmat(3, N, 1) does not give what I want here. Can you advise?

Daniel Shub

on 25 May 2012

See my edit.

C Zeng

### C Zeng (view profile)

on 25 May 2012

Oh, yes, or using combinator.m file:
combinator(3,N)-1

Thank you so much!

### Daniel Shub (view profile)

on 24 May 2012

#### Join the 15-year community celebration.

Play games and win prizes!

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi