Find euclidean distance of a m X 2 matrix

Suppose I have a =( 1 ,2; 3, 4;5,6); 3 X 2 matrix
x =( 1,10); 2 X 1 matrix
bsx_out = bsxfun(@minus,a,x); % i have done row wise subtraction.
I want to find the euclidean distance as a 3 X 1 column vector
so for first row it will be sqrt( (1-1)^2 + (2-10)^2)

 Accepted Answer

a =[ 1 ,2; 3, 4;5,6]
x =[1,10]'
out = sqrt(sum(bsxfun(@minus,a,x.').^2,2))

More Answers (1)

An alternative:
out = hypot(a(:,1)-x(1),a(:,2)-x(2))

Categories

Community Treasure Hunt

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

Start Hunting!