concatenate vectors

17 views (last 30 days)
Miriam
Miriam on 10 Nov 2011
Hi, let's say I have e.g. three column-vectors a(nx1), b(nx1), c(nx1) I want to concatinate them to have another column-vector (nx1) which has a,b,c inside one after another. How do I do this? Any help regarding that question is appreciated! Thanks in advance!

Answers (3)

Titus Edelhofer
Titus Edelhofer on 10 Nov 2011
Hi Miriam,
now with column vectors. Does this what you expect?
a = [1; 2];
b = [3; 4; 5];
c = [6; 7];
d = [a; b; c]
Titus
  3 Comments
Miriam
Miriam on 10 Nov 2011
I changed it in the question, thanks for the remark.
Titus Edelhofer
Titus Edelhofer on 10 Nov 2011
updated as well ;-)

Sign in to comment.


Walter Roberson
Walter Roberson on 10 Nov 2011
You cannot do that with numeric vectors. Numeric vectors do not permit nesting.
An nx1 vector is a column vector, by the way, not a row vector.
The code below creates an n x 1 cell array in which each entry is [a(k),b(k),c(k)]
NewArray = mat2cell([a,b,c], ones(1,length(a)), 3 );
I would, though, tend to think that likely whatever you are doing would be more easily done by creating an n x 3 array:
NewArray = [a,b,c];

William
William on 10 Nov 2011
Newvect = [a(nx1);b(nx1);c(nx1)]
or
Newvect = [a(nx1) b(nx1)c(nx1)]
or try
help strcat
help horzcat
  1 Comment
Miriam
Miriam on 10 Nov 2011
ok great, that's it, thanks!

Sign in to comment.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!