vector array in matlab

1 view (last 30 days)
ali hassan
ali hassan on 10 Feb 2022
Commented: Adam Danz on 10 Feb 2022
assume i have folllowing vector column named as ALT_digit_
i want to know the number of times 'hi' comes in the vector column.

Accepted Answer

KSSV
KSSV on 10 Feb 2022
LEt A be your cell array.
idx = contains(A,'hi') ;
nnz(idx)

More Answers (2)

Adam Danz
Adam Danz on 10 Feb 2022
Edited: Adam Danz on 10 Feb 2022
See strcmp (case senstive) or strcmpi (case insensitive) to compare a vector of strings to a single string. Those functions will return a logical vector. Then add the vector using sum() to count the number of matches.
n = sum(strcmpi(T.ALT_digit, 'hi'))
  1 Comment
Adam Danz
Adam Danz on 10 Feb 2022
If your only string values are 'hi' 'lo' or '' and your Matlab release is R2016b or later, this solution is perfectly fine. But if you're using a release prior to 16b or combinations of 'hi' and 'lo', consider using a different method.

Sign in to comment.


Image Analyst
Image Analyst on 10 Feb 2022
Yes another way : using ismember():
ALT_digit = {'lo', '', '', '', 'lo', '', '', '', 'lo', '', 'abc'}
rows = ismember(ALT_digit, 'lo')
count = sum(rows)

Community Treasure Hunt

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

Start Hunting!