Distance between elements of matrix

3 次查看(过去 30 天)
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

采纳的回答

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

更多回答(1 个)

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

类别

Help CenterFile Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by