MATLAB: Making cell array out of two same length vectors

mat2celltwo vectors to one cell array

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

Best Answer

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