How to find the position in cell arry?
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi
I have cell array data example. D = {[1 2];[1 4];[1 6];[2 4];[2 5];}
I want to find the position of [1 6] in that D, and the answer is 3.
I try this command
suppose c = [1 6]
cellfun(@(x) ismember(x,c),D,'UniformOutput',false)
and the output is below
[0] [0] [1] [0] [0]
but I want the answer is 3
how to do it?
thank you
0 comentarios
Respuesta aceptada
Honglei Chen
el 25 de Jun. de 2012
D = {[1 2];[1 4];[1 6];[2 4];[2 5];}
c = [1 6]
[~,~,idx] = intersect(c,cell2mat(D),'rows')
3 comentarios
Honglei Chen
el 25 de Jun. de 2012
~ is introduced recently, indicating that the output is not needed in successive steps. If it errors out, you can just use any variable name you want, as you have tried.
Más respuestas (1)
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!