Problem with find string in array
Mostrar comentarios más antiguos
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 comentarios
Stephen23
el 20 de Mzo. de 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
el 20 de Mzo. de 2020
Would you attach a sample file ?
the cyclist
el 20 de Mzo. de 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
el 20 de Mzo. de 2020
Thank you the cyclist.
Respuesta aceptada
Más respuestas (1)
the cyclist
el 20 de Mzo. de 2020
contains(cellstr(Mfg),'bmw')
5 comentarios
Kostiantyn Voskoboinik
el 20 de Mzo. de 2020
the cyclist
el 20 de Mzo. de 2020
Do you have an older version of MATLAB? The contains function was introduced in R2016b.
Kostiantyn Voskoboinik
el 20 de Mzo. de 2020
the cyclist
el 20 de Mzo. de 2020
This is more awkward, but will work
not(cellfun(@isempty,strfind(cellstr(Mfg),'bmw')))
I expect there is something more elegant.
Kostiantyn Voskoboinik
el 21 de Mzo. de 2020
Categorías
Más información sobre Data Type Conversion en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!