Borrar filtros
Borrar filtros

what am I doing wrong with ismember?

8 visualizaciones (últimos 30 días)
Samyukta Ramnath
Samyukta Ramnath el 6 de Jul. de 2013
Comentada: Stephen23 el 24 de Mzo. de 2017
I am trying to use ismember to find out whether a member of a cell is present in another cell array of strings. In one script, I did this -
if true
% code
end
stringyo = {'yo','I','love','you'};
test_stringyo = {'yo','you','look','funny'};
ismember(stringyo,test_stringyo{1})
which works well, gives the array 1 0 0 0, and in another script,
if true
% code
end
global Tag_sequences; % This is another cell array of strings defined elsewhere
Tags = {'DD','NN','PP','PN','ADJ','ADV','VB','PNN'};
ismember(Tag_sequences,Tags{1})
But this gives an error : Error using cell/ismember>cellismemberlegacy (line 131) Input A of class cell and input B of class char must be cell arrays of strings, unless one is a string.
  2 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 6 de Jul. de 2013
what is Tag_sequences?
Samyukta Ramnath
Samyukta Ramnath el 6 de Jul. de 2013
It is a previously defined global cell array of strings containing the elements of Tags in a variable order and with a variable number of elements.

Iniciar sesión para comentar.

Respuesta aceptada

the cyclist
the cyclist el 6 de Jul. de 2013
Editada: the cyclist el 6 de Jul. de 2013
I suggest you check whether Tag_sequences is really a cell array of strings [as required by ismember()]. You can do this easily:
>> iscellstr(Tag_sequences)
I am guessing that that returns false.
You can then identify exactly which cell or cells are causing the problem:
>> cellfun(@ischar,Tag_sequences)
  5 comentarios
Zain ul Aabidin
Zain ul Aabidin el 24 de Mzo. de 2017
Then how to convert Tag_sequences = {7,'b','c'} to Tag_sequences = {'7','b','c'};
Stephen23
Stephen23 el 24 de Mzo. de 2017
@Zain ul Aabidin:
>> C = {7,'b','c'};
>> cellfun(@num2str,C,'uni',0)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by