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

2 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

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

Più risposte (0)

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by