find element in array
14 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
NA
am 18 Okt. 2018
Bearbeitet: Stephen23
am 18 Okt. 2018
I have
E=[1 2;1 5;2 3;2 4;2 5;3 4;4 5;4 7;4 9;5 6;6 11;6 12;6 13; 7 8;7 9;9 10;9 14;10 11;12 13;13 14]
and
C={[1,2,4,5],[1,2,4,5,6,9,10,11],[1,2,4,5,6,13,13]}
I want to write a code that give me this result:
{[1,2;1,5;2,5;4,5],[1,2;1,5;2,4;4,9;9,10;5,6;6,11],[1,2;1,5;2,4;4,9;5,6;6,13;9,14;13,14]}
1 Kommentar
Akzeptierte Antwort
Bruno Luong
am 18 Okt. 2018
Bearbeitet: Bruno Luong
am 18 Okt. 2018
Not sure how you get the result, but here is an attempt
Data
E=[1 2;1 5;2 3;2 4;2 5;3 4;4 5;4 7;4 9;5 6;6 11;6 12;6 13; 7 8;7 9;9 10;9 14;10 11;12 13;13 14]
C={[1,2,4,5],[1,2,4,5,6,9,10,11],[1,2,4,5,6,13,13]}
Code
CC = cellfun(@(s) E(all(ismember(E,s),2),:), C, 'unif', 0);
Result:
>> CC{:}
ans =
1 2
1 5
2 4
2 5
4 5
ans =
1 2
1 5
2 4
2 5
4 5
4 9
5 6
6 11
9 10
10 11
ans =
1 2
1 5
2 4
2 5
4 5
5 6
6 13
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Cell Arrays finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!