Matrix calculation indexing conditional
1 view (last 30 days)
Show older comments
Zeynab Mousavikhamene
on 13 Aug 2019
Commented: Andrei Bobrov
on 15 Aug 2019
I have a matrxi of 500 rows and 6 columns. I need to sum all the rows of 2nd column of the matrix if their 3rd column and 4th coumns equal to specific numbers.
How can I do that?
Lets explain more: One column is the time. An other column is radius. We can have multiple rows of the same time. Or multiple rows that have the same radius. An other coulmn is number of cells. I want to say for all times=2 and all radius=3 sum the number of cells.
2 Comments
Accepted Answer
Andrei Bobrov
on 13 Aug 2019
Edited: Andrei Bobrov
on 13 Aug 2019
Let A - your array (500 x 6):
T = array2table(A);
T_out = varfun(@sum,T,'InputVariables',2,'GroupingVariables',3:4);
9 Comments
Andrei Bobrov
on 15 Aug 2019
GroupCount this is numbers of the same rows in the sub-matrix of two columns - [time, radius]
More Answers (0)
See Also
Categories
Find more on Matrices and Arrays 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!