How to find the most similar row in matrix A to matrix B

1 view (last 30 days)
I have Two matrix A &B as follows"
A=[1.2 2.0 3.3;1.2 2.0 3.2;1.1 2.1 3.3]
B=[1.1 2.0 3.2]
I want to find most similar row in matrix A(&elements) to matrix B. Please kindly help some how can I trace the most similar one.
Many Thanks in advance.
  2 Comments
Steven Lord
Steven Lord on 1 Jul 2015
A = [1 1 1];
B = [1 1 1e6];
C = [10 10 10];
Which of B or C is "most similar" to A? B matches two of the three elements exactly, but the third is rather far off. C doesn't match ANY of the elements in A exactly, but it's not as far off as B's third element.

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 1 Jul 2015
variant
A=[1.2 2.0 3.3;1.2 2.0 3.2;1.1 2.1 3.3];
B=[1.1 2.0 3.2];
a = sqrt(sum(bsxfun(@minus,A,B).^2));
[~,t] = min(a);
out = A(t,:);

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!