How to find index of the following problem?

2 visualizaciones (últimos 30 días)
SM
SM el 29 de Oct. de 2019
Respondida: SM el 29 de Oct. de 2019
A={[];13;[1,5];10;7;[];8;3;5;18;[];[1,4];[2,33];[3,17];[4,37];[5,1];[6,28];[7,20];[8,15]};
B={[1 10 5]};
Output=[3;4;9]
the elements of index 3 , 4 and 9 in A are contained by B and therefore the output is [3;4;9].
What is the easiest way of getting this output?

Respuesta aceptada

Walter Roberson
Walter Roberson el 29 de Oct. de 2019
find( cellfun(@(v) all(ismember(v, B)), A))
  2 comentarios
SM
SM el 29 de Oct. de 2019
That's excellent! One problem is that It also considers the empty cell. Is it possible to exclude [] ? Because it results [1; 3; 4; 6; 9; 11; 16] instead of [3;4;9].
Walter Roberson
Walter Roberson el 29 de Oct. de 2019
find( cellfun(@(v) ~isempty(v) && all(ismember(v, B)), A))

Iniciar sesión para comentar.

Más respuestas (1)

SM
SM el 29 de Oct. de 2019
Thank you! It works now.

Categorías

Más información sobre Data Type Identification 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