Find function for cell array

6 visualizaciones (últimos 30 días)
Anupam  Saikia
Anupam Saikia el 7 de Mayo de 2019
Comentada: Anupam Saikia el 16 de Mayo de 2019
I havr a cell myCell 1x200 Each cell contains set of three values like myCell{1,1} = 1,118,180 ... myCell{1,8}= 1,122,185 and so on If I have to use find function by providing all three values, how should I use?

Respuesta aceptada

Jan
Jan el 7 de Mayo de 2019
Editada: Jan el 7 de Mayo de 2019
Do all elemts of the cell have the same size and type? Then working with a numerical array is easier and faster:
M = cat(1, myCell{:});
match = find(ismember(M, [1,2,128], 'rows'))
% or
find(M == [1,2,128]) % auto-expanding, >=Matlab R2016b

Más respuestas (1)

Adam
Adam el 7 de Mayo de 2019
wantedArray = [1,122,185];
cellfun( @(x) isequal(x,wantedArray), myCell );
You would be better off using a numeric array though for neatly structured data.

Categorías

Más información sobre Structures 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