concatenate vectors

7 次查看(过去 30 天)
Miriam
Miriam 2011-11-10
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!

回答(3 个)

Titus Edelhofer
Titus Edelhofer 2011-11-10
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 个评论
Miriam
Miriam 2011-11-10
I changed it in the question, thanks for the remark.
Titus Edelhofer
Titus Edelhofer 2011-11-10
updated as well ;-)

请先登录,再进行评论。


Walter Roberson
Walter Roberson 2011-11-10
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 2011-11-10
Newvect = [a(nx1);b(nx1);c(nx1)]
or
Newvect = [a(nx1) b(nx1)c(nx1)]
or try
help strcat
help horzcat

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by