How to count a specific string in a cell array?

56 visualizzazioni (ultimi 30 giorni)
I'm trying to count the number of occurrences of a word in a cell array. For example if the cell is like this:
c = {'car' , 'tree' , 'car' , 'bag' , 'horse' , 'car' , 'tree'}
I want to count the number of occurrences of strings in the cell. For example if I search for the number of string 'water' it would result in *0*. Or if I search for the number of 'car', it would result in *3*. How can I do this?
Thanks in advance

Risposta accettata

KSSV
KSSV il 23 Mar 2017
c = {'car' , 'tree' , 'car' , 'bag' , 'horse' , 'car' , 'tree'} ;
idx = strfind(c, 'car');
idx = find(not(cellfun('isempty', idx)));
N = length(idx)
  2 Commenti
Hadi Ghahremannezhad
Hadi Ghahremannezhad il 23 Mar 2017
Thanks a lot. It works very fine.
KSSV
KSSV il 23 Mar 2017
@ Hadi Ghahremannezhad Stephen Cobeldick's answer is perfect one...

Accedi per commentare.

Più risposte (1)

Stephen23
Stephen23 il 23 Mar 2017
>> c = {'car' , 'tree' , 'car' , 'bag' , 'horse' , 'car' , 'tree'};
>> nnz(strcmp(c,'water'))
ans =
0
>> nnz(strcmp(c,'car'))
ans =
3

Categorie

Scopri di più su Design and Simulate SerDes Systems in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by