how to find index of the point in matrix with condition?

Let's say, i have matrix 6-by-1 matrix:
A=[ 1 --->labelling "1"
6 --->labelling "2"
3 --->labelling "3"
5 --->labelling "4"
-3 --->labelling "5"
10 ] --->labelling "6"
and
B=[5]
I want to write the code to compare each value in matrix A with B with condition ( If {A}<B---> I will pick up the index and the value from matrix A to make a new matrix)
Particurly: I have the number 1,3, -3 (in matrix A) is smaller than 5 (in matrix B) so I will have the result after compare condition as follows:
C=[ 1 --->labelling "1"
3 --->labelling "3"
-3 ] --->labelling "5"
and the labelling matrix D will be :
D=[ 1
3
5 ]
How to write a relationship between matrix A,B,C,D ?

2 commentaires

KL
KL le 28 Août 2017
Read the documentation. Your questions have direct and simple answers right there.
yeh read the entire documentation for a single question.

Connectez-vous pour commenter.

 Réponse acceptée

Benjamin Imbach
Benjamin Imbach le 28 Août 2017
Modifié(e) : Benjamin Imbach le 28 Août 2017
check out the find function.
A = [1 6 3 5 -3 10]';
B = 5;
D = find(A<B); %(linear index)
C = A(D);

1 commentaire

Jan
Jan le 28 Août 2017
Modifié(e) : Jan le 28 Août 2017
This is even more efficient with "logical indexing": omit the "find".
C = A(A < B)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Tags

Community Treasure Hunt

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

Start Hunting!