assume i have folllowing vector column named as ALT_digit_
i want to know the number of times 'hi' comes in the vector column.

 采纳的回答

LEt A be your cell array.
idx = contains(A,'hi') ;
nnz(idx)

更多回答(2 个)

Adam Danz
Adam Danz 2022-2-10
编辑:Adam Danz 2022-2-10

0 个投票

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 个评论

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.

请先登录,再进行评论。

Yes another way : using ismember():
ALT_digit = {'lo', '', '', '', 'lo', '', '', '', 'lo', '', 'abc'}
rows = ismember(ALT_digit, 'lo')
count = sum(rows)

类别

帮助中心File Exchange 中查找有关 Numeric Types 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by