Find an element of a matrix equal to a constant

18 vues (au cours des 30 derniers jours)
cyberdyne
cyberdyne le 29 Mar 2011
Hi,
If B is a matrix i need to find the index of element that is equal to a constant c where the constant c is undoubtedly somewhere in the matrix.
I tried to do:
B(:,B(2,:)==c)
but there are some problems with logical operator ==
It returns me "Empty matrix"

Réponses (1)

Matt Fig
Matt Fig le 29 Mar 2011
If you are looking for the linear index:
I = find(B==c);
If you are looking for the subscript index:
[I,J] = find(B==c);
I hope you are not experiencing a floating point issue???
Whenever I hear somebody say they cannot find a value that they just know is in an array, I wonder if they are not about to learn the joys of floating point arithmetic.
  3 commentaires
Walter Roberson
Walter Roberson le 29 Mar 2011
Yup, see the link Matt posted about floating point issues.
cyberdyne
cyberdyne le 29 Mar 2011
Great! The problem was it. Thanks.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing 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!

Translated by