How i accumulate multiple variables?

2 views (last 30 days)
Anel Ruiz
Anel Ruiz on 15 Jun 2020
Answered: dpb on 15 Jun 2020
Hi,
I have an array, where column 1 to 3 are descriptive, and column 4 is the value. For example:
1 1 1 a
1 1 2 b
1 2 1 c
1 2 2 d
2 1 1 e
2 1 2 f
2 2 1 g
2 2 2 h
3 1 1 i
3 1 2 j
3 2 1 k
3 2 2 l
I want to totalize this array by column 3 descriptive value, so the result is this:
1 1 (a+b)
1 2 (c+d)
2 1 (e+f)
2 2 (g+h)
3 1 (i+j)
3 2 (k+l)
I tried with accumarray using as subs columns 1 and 2, and it gives the result i Want, but in a different form:
(a+b) (c+d)
(e+f) (g+h)
(i+j) (k+l)
Please, have any ideas?

Accepted Answer

dpb
dpb on 15 Jun 2020
  1. out=out(:); % just reshape to column vector
  2. Use k=2*(i-1)+j; % for index vector where i,j ==> a(:,1), a(:,2), respectively.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!