convert cell to array
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I have
A={[1;95;110],[58;78;80;110;111;112],[58;59;79;110;112;113],[64;83;84;85;90;112;113],[112],[0],[0],[116]};
C = cellfun(@(x)x(x~=0),A,'uni',false);
I want to conver this cell to array, result should be:
result=[1;95;110;58;78;80;110;111;112;58;59;79;110;112;113;64;83;84;85;90;112;113;112;116]
I tried to use cell2mat(A) but have this error
Error using cat
Dimensions of arrays being concatenated are not consistent.
Error in cell2mat (line 75)
m{n} = cat(2,c{n,:});
0 Kommentare
Akzeptierte Antwort
Andrei Bobrov
am 15 Feb. 2019
out = cat(1,A{:});
out = out(out ~= 0);
2 Kommentare
VBBV
am 2 Feb. 2023
A={[1;95;110],[58;78;80;110;111;112],[58;59;79;110;112;113],[64;83;84;85;90;112;113],[112],[0],[0],[116]}
B = A{:} % why do i get only the first element of cell array ?
B = A(:) % this does not have problem
why does the parenthetical referencing with { : } return only the first element of cell array ? but it does not occur with ( : )
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Cell Arrays finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!