Save numbers (present within a cell) into a single matrix

Hi! How can I save the numbers the numbers contained in this cell as a matrix?
Also, instead of blanks [] I should have zeros 0. Thank you!

 Accepted Answer

S = load('example.mat');
C = S.example
C = 4×4 cell array
{[10]} {[ 12]} {[ 86]} {0×0 double} {[91]} {[ 24]} {0×0 double} {0×0 double} {[ 4]} {0×0 double} {0×0 double} {0×0 double} {[31]} {[ 66]} {[ 49]} {0×0 double}
C(cellfun(@isempty,C)) = {0};
M = cell2mat(C)
M = 4×4
10 12 86 0 91 24 0 0 4 0 0 0 31 66 49 0

2 Comments

Thank you for your answer! Could you tell me how I can know the amount of positive numbers (excluding zeros) within the matrix (or cell)? In this case I have 9 numbers in total.
Count all non-zeros:
nnz(M)
Count only positive values:
nnz(M>0)

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2021b

Asked:

on 10 Jan 2023

Commented:

on 10 Jan 2023

Community Treasure Hunt

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

Start Hunting!