Find an element of a matrix equal to a constant

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

cyberdyne
cyberdyne le 29 Mar 2011
I'm looking for subscript index but after i enter your code it retuns again:
Empty Matrix
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

Question posée :

le 29 Mar 2011

Community Treasure Hunt

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

Start Hunting!

Translated by