MATLAB Answers

Filling Cell Array with Empty value

20 views (last 30 days)
Abi Waqas
Abi Waqas on 25 Nov 2015
Commented: Avinash Dass on 26 Feb 2019
Hi Everyone
I have cell arracy call Reults look like given below 4x1 cell
3x1 cell
4x1 cell
3x1 cell
4x1 cell
4x1 cell
4x1 cell
4x1 cell
4x1 cell
4x1 cell
5x1 cell
4x1 cell
4x1 cell
5x1 cell
I want to do the dimension equal of each cell by filling with empty value so that it becomes like 5x1 cell
5x1 cell
5x1 cell
5x1 cell ... and so on.
Can any one help ? It would be great to check if dimension of any cell in a cell called 'Result' is less than 5 say 4x1 make it 5x1 by inseting the empty value at last.
If the check is not possible it is fine to make every cell with in cell call 'Result' 5x1
Thanks in advance.

  0 Comments

Sign in to comment.

Accepted Answer

Thorsten
Thorsten on 25 Nov 2015
Edited: Thorsten on 25 Nov 2015
for i = 1:numel(Result)
[r, c]= size(Result{i});
assert(c == 1, 'Number of columns must be 1.')
if r < 5, Result{i}{5,1} = []; end
end

  2 Comments

Abi Waqas
Abi Waqas on 26 Nov 2015
Dear
thanks for response, i found another solution. The solution you gave is right but was not suiting my problem.
Thanks alot :)
Avinash Dass
Avinash Dass on 26 Feb 2019
Dear Abi,
Can you provide me your solution ?
Thanks in advance.

Sign in to comment.

More Answers (1)

Stephen Cobeldick
Stephen Cobeldick on 25 Nov 2015
Edited: Stephen Cobeldick on 25 Nov 2015
As an alternative you can easily remove one level of the cell nesting:
V = {{0;1;2};{3;4;5;6};{7;8;9}};
for k = numel(V):-1:1
Z(1:numel(V{k}),k) = V{k};
end
This produces a cell array without other cells nested inside it, each column is one of the cells of the original array (swap the Z-indices to make this the rows):
>> Z
Z =
[0] [3] [7]
[1] [4] [8]
[2] [5] [9]
[] [6] []
It may be easier to access the contents:
>> Z(:,2)
ans =
[3]
[4]
[5]
[6]

  1 Comment

Abi Waqas
Abi Waqas on 26 Nov 2015
thank you for the reponse :)
I have found someother solution for that

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!