Put 3 columns of two matrix in 1 row matrix

1 visualización (últimos 30 días)
Phong Pham
Phong Pham el 15 de Nov. de 2013
Respondida: Andrei Bobrov el 15 de Nov. de 2013
I have matrix X and Y with dimension of 100 x 3
X= [ x1 x2 x3; x4 x5 x6; etc];
Y=[ y1 y2 y3; y4 y5 y6; etc];
Now I want a matrix that combines X and Y with the format as following
XY= [ x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6, etc]
I have tried XY=reshape([ X, Y].',1,[]); but it gave me XY=[ x1 x2 x3 y1 y2 y3 ]
Please helps

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 15 de Nov. de 2013
Editada: Azzi Abdelmalek el 15 de Nov. de 2013
X=[1 2 3;4 5 6];
Y=[11 22 33;44 55 66]
X=X';
Y=Y';
a=[X(:) Y(:)]'
out=a(:)'

Más respuestas (3)

Walter Roberson
Walter Roberson el 15 de Nov. de 2013
reshape([X;Y])

Image Analyst
Image Analyst el 15 de Nov. de 2013
Try this way:
% Create sample data.
numberOfRows = 5;
x = randi(9, numberOfRows, 3)
y = randi(9, numberOfRows, 3)
% Create the desired output array.
XY = zeros(1, numel(x)+numel(y)); % Initialize
% Stuff in the x
XY(1:2:end) = x';
% Stuff in the y
XY(2:2:end) = y'

Andrei Bobrov
Andrei Bobrov el 15 de Nov. de 2013
reshape(permute(cat(3,X,Y),[3, 2, 1]),1,[])

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by