Il doit être simple, mais étonnamment, je ne pouvais pas trouver une réponse à ce problème ici ou par essais et erreurs.
Je veux extraire des valeurs d'une matrice (selon certaines conditions) et placer les valeurs dans un vecteur. J'ai aussi besoin des indices en indice des valeurs correspondantes. Il y a beaucoup de données donc les boucles sont sorties.Trouver des valeurs dans une matrice et les mettre dans un vecteur
Ceci est une réponse correcte (mais itérative):
[I,J] = find(A > 5);
values = zeros(numel(I),1);
for i=1:numel(I)
values(i) = A(I(i),J(i));
end
J'ai essayé values = A(I,J)
mais ce n est par n au lieu de n par 1.
+1. règles d'indexation logiques! –
Je me demande s'il est plus rapide d'utiliser sub2ind et trouver ou trouver (pour les indices) et l'indexation logique ... –