How to nest a cell array with existing cell array

24 views (last 30 days)
Hi, I have a cell array Cells which is 1 x 190, and each cell is again a 1 x 20 cell array. Now for each cell in this 1 x 20 array I have to add two more cells which contain matrices. I tried doing Cells{1,1}{1,1}{1,1}=mymatrix; Cells{1,1}{1,1}{1,2}=mymatrix2; But I get an error Cell contents assignment to a non-cell array object. I am doing this in a loop like
for i =1:190
for j=1:20
Cells{1,i}{1,j}{1,1}=mymatrix;
Cells{1,i}{1,j}{1,2}=mymatrix2;
end
end
How can I also speed this up. Thanks

Accepted Answer

Jan
Jan on 25 Jan 2017
Edited: Jan on 26 Jan 2017
Cells = cell(1, 190);
for i1 = 1:190
SubCell = cell(1, 20);
for i2 = 1:20
SubCell{i2} = {mymatrix, mymatrix2};
end
Cells{i1} = SubCell;
end
  2 Comments
kowshik Thopalli
kowshik Thopalli on 25 Jan 2017
Should It have been Cells{1,i1}=Subcell, Right?
Jan
Jan on 26 Jan 2017
You are right, a typo. Fixed now. Cells{i1} is a tick faster than Cell{1, i1} with the same result.

Sign in to comment.

More Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!