## atwo to a one dimentional vector in Matlab

### Bob (view profile)

on 23 May 2012
How would I get a one dimentional vector in Matlab, so that when I type size(x) the size is, for example, 10 and not 1 by 10?

James Tursa

### James Tursa (view profile)

on 23 May 2012
Maybe use the numel function instead.

### Sean de Wolski (view profile)

on 23 May 2012

That is not possible unless you define your own class that will internally store the vector as a 1x10 but display 10 when queried for size or if you write your own size function.
Otherwise, every vector, scalar, matrix etc has at least two dimensions in size.

### Walter Roberson (view profile)

on 23 May 2012

You cannot. All arrays in MATLAB show up as 2 or more dimensions for the purposes of size. You can, however, get a column vector.
x = 1 : 10;
size(x)
x1 = x(:);
size(x1)
If you have a row vector, you can use the .' operator to turn it into a column vector:
x = 1 : 10;
size(x)
x1 = x.';
size(x1)
You can construct a column vector directly:
x = (1 : 10).'
size(x)
x = [1; 2; 3; 4; 5];
size(x)