Find sum of elements in a cell along the columns
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Vishakha Ramani
le 9 Sep 2019
Réponse apportée : Jacob Shulman
le 9 Sep 2019
Hi all,
I have a 3D cell A with dimensions 3x5x2. An example of elements along row 2, all columns and z dimension = 1 is:
x = A(2,:,1)
x = [ ] [ ] 5.1 [ ] 7.9
I would like to add up the non zero entries and get the number of non zero entries in this resulting array. I tried using:
y = sum([A(2,:,1)])
and
y = cumsum([A(2,:,1)])
But got the following error:
"Error using sum
Invalid data type. First argument must be numeric or logical."
Could anyone please help me with this and would kindly let me know the procedure to solve such problems.
1 commentaire
Réponse acceptée
James Tursa
le 9 Sep 2019
Modifié(e) : James Tursa
le 9 Sep 2019
Is this what you are trying to do? (using the curly braces)
y = sum([A{2,:,1}])
Plus de réponses (1)
Jacob Shulman
le 9 Sep 2019
A=cell(2,2,2)
A{2,1,1}=1;
A{2,2,1}=2;
B=0;
[rows,columns,depth]=size(A);
for i=1:rows
for j=1:columns
if nonzeros(A{i,j,1})
B=B+1;
end
end
end
y = sum([A{2,:,1}])
B
The function nonzeros will not count zeros or blanks.
0 commentaires
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!