# Average column data with specific values

2 visualizzazioni (ultimi 30 giorni)
Nick Austinos il 23 Ago 2022
Commentato: Nick Austinos il 23 Ago 2022
I have the data below, I am trying to average the column gdppc for each country.
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Risposta accettata

Robert U il 23 Ago 2022
Hi Faustine Enos,
I do not know how your data is available and what data type you chose. It is preferrable to use table type data. Then, you can adjust the following code snippet:
col_1 = {'Country A';'Country A';'Country A';'Country A';'Country B';'Country B';'Country B';'Country C'};
col_2 = [1; 2; 3; 4; 5; 6; 7; 8];
data = table(col_1,col_2,'VariableNames',{'Country','value'});
cCountry = unique(data.Country);
for ik = 1:numel(cCountry)
sumVal(ik) = sum(data.value(ismember(data.Country,cCountry{ik})));
disp(sprintf('%s %d',cCountry{ik},sumVal(ik)));
end
Country A 10 Country B 18 Country C 8
Kind regards,
Robert
##### 1 CommentoMostra -1 commenti meno recentiNascondi -1 commenti meno recenti
Nick Austinos il 23 Ago 2022
Thanks it works now.

Accedi per commentare.

### Più risposte (1)

Simon Chan il 23 Ago 2022
Use function writetable to convert your data on a table array.
Then use function groupsummary as follows
G = groupsummary(T,"country","mean","gdppc") % where T is the table array
##### 1 CommentoMostra -1 commenti meno recentiNascondi -1 commenti meno recenti
Nick Austinos il 23 Ago 2022
Hi it works really well.

Accedi per commentare.

### Categorie

Scopri di più su MATLAB 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