Distance between elements of matrix

4 views (last 30 days)
I have a single line matrix in Matlab
U= -25.2465 -5.1193 44.1124 -18.1332 9.2715 43.7203 -48.6050.
What i want to find is the distance between consecutive elements..
For ex:- first selecting the first point -25.2465 and finding the distance with all other points..In the same way simultaneously selecting -5.1193,44.1124..and so on.
The output i intend to get is a distance matrix
0 (-5.11+25.24) ... ... ... ... ...
(25.324-5.1) 0
(25.24+44.11) (-5.11+44.93) ... ... ... ... ...
(25.24-18.13) ...
(25.24+9.71) ...
...
How should i write this code

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 14 Sep 2013
out = abs(bsxfun(@minus,U,U'));
or use function dist from Neural Network Toolbox
out = dist(U);

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 14 Sep 2013
n=numel(A)
B=-diff(A(fullfact([n n]))')'

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!