MATLAB: Merging vectors into one

matrixvectors

Hi, I am new to Matlab and I'm trying to use it as a tool to create a model.
I have two vectors, both of them are <1×6001> double,
x=(x1,x2,x3…)
y=(y1,y2,y3…)
but what I need is to merge them as one in the following way:
z=(x1,y1;x2,y2;x3,y3…,xn;yn) – comma separates the elements, and semicolon separates the pairs.
so that I can use it as input data.
Is there a way to do it?

Best Answer

Simple:
x = 1:10;
y = x + 10; % for example
% x and y are both [1x10] row vectors as you mentioned
z = [x(:), y(:)];
% z is a [10x2] matrix of
% [x1, y1;
% x2, y2;
% .....
% xn, yn]
And if you want it back in 'row' form, just transpose z using an apostrophe '