Problem with find string in array
Mostra commenti meno recenti
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 Commenti
Stephen23
il 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
il 20 Mar 2020
Would you attach a sample file ?
the cyclist
il 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
il 20 Mar 2020
Thank you the cyclist.
Risposta accettata
Più risposte (1)
the cyclist
il 20 Mar 2020
contains(cellstr(Mfg),'bmw')
5 Commenti
Kostiantyn Voskoboinik
il 20 Mar 2020
the cyclist
il 20 Mar 2020
Do you have an older version of MATLAB? The contains function was introduced in R2016b.
Kostiantyn Voskoboinik
il 20 Mar 2020
the cyclist
il 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
il 21 Mar 2020
Categorie
Scopri di più su Data Type Conversion in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!