extract cell depend on vector?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear all, I have vector a (1x7) and cell b (1x7), how can I extract each cell depend on elements equal in a?
a= [ 1 2 3 3 4 5 6 6];
b= { [1 2 3] [ 3 6] [ 5 6 7] [ 5 60] [ 5 6 5] [ 6 7 1 0] [ 88 99] [ 7 8 99] }
result should be:
res= {[ 5 6 7] [ 5 60] [ 6 7 1 0] [ 88 99]}
Thanks...
1 commentaire
Réponse acceptée
Guillaume
le 7 Fév 2017
The latest explanation is much clearer:
a = [ 3 2 1 3 6 5 4 6];
b = { [1 2 3] [ 3 6] [ 5 6 7] [ 5 60] [ 5 6 5] [ 6 7 1 0] [ 88 99] [ 7 8 99] };
result = b(arrayfun(@(v) sum(a == v)>1, a))
Plus de réponses (1)
Stephen23
le 7 Fév 2017
Modifié(e) : Stephen23
le 7 Fév 2017
>> a = [1,2,3,3,4,5,6,6];
>> b = {[1,2,3],[3,6],[5,6,7],[5,60],[5,6,5],[6,7,1,0],[88,99],[7,8,99]};
>> c = b(cellfun(@(v)~all(ismember(v,a)),b))
>> c{:}
ans =
5 6 7
ans =
5 60
ans =
6 7 1 0
ans =
88 99
ans =
7 8 99
4 commentaires
Guillaume
le 7 Fév 2017
Kudos to Stephen for figuring out what you want (maybe!) but really, you need to express yourself a lot clearer.
"There are only 4 elements equal in vector a"
4 elements equal to what?
Voir également
Catégories
En savoir plus sur Mathematics and Optimization dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!