convert two column matrices into one column matrix

Hello I want to combine two column vector matrices into one column vector matrix like the example
A=[1;4;6;7;8]
B=[10;21;11;9]
C must be like:
C=[1;10;4;21;6;11;7;9;8]
I need a general answer because I have many and large columns. Thank you

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 25 Mär. 2018
nA = length(A);
nB = length(B);
C = zeros(nA + nB, 1);
nCommon = min(nA, nB);
C(1:2:nCommon*2-1) = A(1:nCommon);
C(2:2:nCommon*2) = B(1:nCommon);
if nA < nB
C(nCommon*2+1:end) = B(nCommon+1:end);
elseif nA > nB
C(nCommon*2+1:end) = A(nCommon+1:end);
%if the lengths were the same then everything was copied by the common processing
end

Weitere Antworten (1)

Roger Stafford
Roger Stafford am 25 Mär. 2018
In the example you gave do this:
C = zeros(9,1);
C(1:2:end) = A;
C(2:2:end) = B;
For a general answer you need to define the generality you are seeking. Give us more information. For example, if the numbers in two vectors differs by more than one element, what do you wish as a result?

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 25 Mär. 2018

Kommentiert:

am 25 Mär. 2018

Community Treasure Hunt

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

Start Hunting!

Translated by