Problem with find string in array
Afficher commentaires plus anciens
Hello, i try to find mark 'bmw' in Mfg table(carbig.mat).I want to create new logic table with 1 (if string exist) or 0 to others string.
>> idx = ismember((Mfg(:,1:6)=='bmw'),[1,1,1,1,1,1],'rows')
But i have this mistake:
Error using ==
Matrix dimensions must agree.
It's my workspace:

4 commentaires
Stephen23
le 20 Mar 2020
First convert the character matrix to a cell array of strings or to a string array without leading/trailing space characters and then use strcmpi.
madhan ravi
le 20 Mar 2020
Would you attach a sample file ?
the cyclist
le 20 Mar 2020
@madhan, if you type
load carbig.mat
you'll have the data. It is a file used for examples in the documentation.
madhan ravi
le 20 Mar 2020
Thank you the cyclist.
Réponse acceptée
Plus de réponses (1)
the cyclist
le 20 Mar 2020
contains(cellstr(Mfg),'bmw')
5 commentaires
Kostiantyn Voskoboinik
le 20 Mar 2020
the cyclist
le 20 Mar 2020
Do you have an older version of MATLAB? The contains function was introduced in R2016b.
Kostiantyn Voskoboinik
le 20 Mar 2020
the cyclist
le 20 Mar 2020
This is more awkward, but will work
not(cellfun(@isempty,strfind(cellstr(Mfg),'bmw')))
I expect there is something more elegant.
Kostiantyn Voskoboinik
le 21 Mar 2020
Catégories
En savoir plus sur Data Type Conversion dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!