How to get the average for repetitive elements of a matrix?

1 view (last 30 days)
Assuming I have a 10x2 matrix, how do I get the average of corresponding values (second column) of repetitive values (first column) in the matrix? Like I have this:
[2 20;
2 30;
2 40;
7 100;
7 110;
7 120;
7 130;
7 140;
15 240;
15 260]
And I want to get this:
[2 30;
7 120;
15 250]

Accepted Answer

Sean de Wolski
Sean de Wolski on 10 Jan 2018
m = [2 20;
2 30;
2 40;
7 100;
7 110;
7 120;
7 130;
7 140;
15 240;
15 260]
[uv,~,idx] = unique(m(:,1))
[uv accumarray(idx,m(:,2),[],@mean)]

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!