Making cell array out of two same length vectors

Hi all, I am trying to make cell array out of two same length vectors, i.e. I have two vectors each is 1066 element and I want to join every element in vector1 with it’s comparative element in vector2 so that to make a cell array made of 1066 equal size vectors each of two elements. Please help

 Akzeptierte Antwort

Stephan M. H.
Stephan M. H. am 15 Mai 2013
Bearbeitet: Stephan M. H. am 15 Mai 2013
Hi Mohammed,
if you have the two vectors x1 and x2 (each of size 1x1066) you can merge them frist to a matrix:
X = [x1;x2]
and then transform it into a cell array
C = mat2cell(X,2,ones(1,1066))
This will give you an cell-array of size 1x1066, where each cell j contains the pair X(:,j).
best,
Stephan

1 Kommentar

Mohammed
Mohammed am 15 Mai 2013
Thank you very much, I tried it and it is working great.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jan
Jan am 15 Mai 2013
C = cell(1, 1066);
for iC = 1:1066
C{iC} = [x1(iC), x2(iC)];
end

1 Kommentar

Mohammed
Mohammed am 15 Mai 2013
Thank you for help. The code runs for a long time and there are empty cells.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Operators and Elementary Operations finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by