Azzera filtri
Azzera filtri

How to find index of the following problem?

1 visualizzazione (ultimi 30 giorni)
SM
SM il 29 Ott 2019
Risposto: SM il 29 Ott 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?

Risposta accettata

Walter Roberson
Walter Roberson il 29 Ott 2019
find( cellfun(@(v) all(ismember(v, B)), A))
  2 Commenti
SM
SM il 29 Ott 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 il 29 Ott 2019
find( cellfun(@(v) ~isempty(v) && all(ismember(v, B)), A))

Accedi per commentare.

Più risposte (1)

SM
SM il 29 Ott 2019
Thank you! It works now.

Categorie

Scopri di più su Data Type Identification in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by