Compare two vectors in matlab n*m

4 次查看(过去 30 天)
A=[1 2 3 4 5 6 7 8 9 10]
B=[4]
I want to compare these two vectors one by one. I want MATLAB to write as a result of it. for example,
with A(1)(1 here) If 1=B(1) the result should be 1/2, and if A(n)<B(1) the result should be 1, and A(n)>B(1) = 0.
It should compare all elements one by one and output its index in a new vector.

采纳的回答

Rik
Rik 2021-10-5
You mean like this?
A=[1 2 3 4 5 6 7 8 9 10];
B=4;
result=zeros(size(A));%pre-allocate
L= A<B ;result(L)=1;
L= A==B;result(L)=1/2;
disp(result)
1.0000 1.0000 1.0000 0.5000 0 0 0 0 0 0
  2 个评论
Rik
Rik 2021-10-5
You're welcome. Did either of our answers solve your problem? If so, please consider marking one of them as accepted answer. If the other helped as well, please consider giving that one an up vote.
If neither solved the problem, feel free to post a comment with your remaining issues.

请先登录,再进行评论。

更多回答(1 个)

KSSV
KSSV 2021-10-5
A=[1 2 3 4 5 6 7 8 9 10] ;
B=4 ;
idx = A >= B
idx = 1×10 logical array
0 0 0 1 1 1 1 1 1 1

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by