Averaging values in Column B based on serial date in column A

Hello
I have an array that looks like:
col A col B
737585 1
737585 2
737585 3
737586 4
737586 5
737586 6
where column A is the serial date and column B is the respective value. I need a for loop that will average the values in col B that have the same serial date as in column A. Thank you!
ex: serial date: 737585 avg: 1+2+3/3 = 2

 Accepted Answer

Does it need to be a loop? I believe this will work:
groups = findgroups(yourArray(:,1));
avg = splitapply(@mean, yourArray(:,2), groups);

2 Comments

I guess it didn't have to be a loop, that worked perfectly! Thank you so much!!!

Sign in to comment.

More Answers (0)

Categories

Asked:

on 8 Jul 2020

Commented:

on 8 Jul 2020

Community Treasure Hunt

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

Start Hunting!