Effacer les filtres
Effacer les filtres

Put 3 columns of two matrix in 1 row matrix

1 vue (au cours des 30 derniers jours)
Phong Pham
Phong Pham le 15 Nov 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

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 15 Nov 2013
Modifié(e) : Azzi Abdelmalek le 15 Nov 2013
X=[1 2 3;4 5 6];
Y=[11 22 33;44 55 66]
X=X';
Y=Y';
a=[X(:) Y(:)]'
out=a(:)'

Plus de réponses (3)

Walter Roberson
Walter Roberson le 15 Nov 2013
reshape([X;Y])
  1 commentaire
Phong Pham
Phong Pham le 15 Nov 2013
Gave me an error " Not enough input arguments"

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 15 Nov 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 le 15 Nov 2013
reshape(permute(cat(3,X,Y),[3, 2, 1]),1,[])

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by