Count frequencies of occurence using both text and number

2 vues (au cours des 30 derniers jours)
Beth Lewis
Beth Lewis le 17 Août 2021
Modifié(e) : Beth Lewis le 17 Août 2021
Hi there,
I'll give a brief example of my table:
Fish species: Count:
red fish 2
red fish 4
red fish 9
blue fish 11
blue fish 2
blue fish 2
blue fish 1
yellow fish 2
yellow fish 10
etc etc...
What I am trying to do is to find the sum of all 'red fish' 'blue fish' etc with about 500 rows and do it automatically not manually.
So I want the code to finish saying this:
red fish 15
blue fish 16
yellow fish 12
for all 29 fish species...
Help?

Réponse acceptée

Adam Danz
Adam Danz le 17 Août 2021
Modifié(e) : Adam Danz le 17 Août 2021
Use groupsummary
% Produce table
% I use categorical variables but you can you strings or char-vectors
rng('default') % for reproducibility, do no include in your implementation
cats = categorical(["red fish","blue fish"])';
fishList = cats(randi(2,500,1));
counts = randi(10,500,1);
T = table(fishList, counts, 'VariableNames', {'Fish','Counts'});
% Show first few rows of table
head(T)
ans = 8×2 table
Fish Counts _________ ______ blue fish 6 blue fish 6 red fish 9 blue fish 3 blue fish 4 red fish 2 red fish 10 blue fish 7
% Count each fish group
groupsummary(T,'Fish')
ans = 2×2 table
Fish GroupCount _________ __________ blue fish 243 red fish 257
  1 commentaire
Beth Lewis
Beth Lewis le 17 Août 2021
Modifié(e) : Beth Lewis le 17 Août 2021
This is great, thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Tables dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by