taking special average of numbers

1 view (last 30 days)
I have two field in dataser as below.
the answer you see as C labeled row, is A1*B1 + A2*B2 + A3*B3 = weightedA A1 + A2 + A3 = totalA so C1 = weightedA/totalA
now do the same for next 3 numbers and so on.
How do i do that in matlab?

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 12 Sep 2014
ab = randi(100,2,12); % here ab - your array
ab2 = permute(reshape(ab,2,3,[]),[2 3 1]);
ab(3,3:3:end) = dot(ab2(:,:,1),ab2(:,:,2))./sum(ab2(:,:,1);

More Answers (0)

Categories

Find more on Structures in Help Center and File Exchange

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!