How would i generalize the following variables

1 view (last 30 days)
I want to generalize the following variables
dat=norm(A(:,5)-A(:,1));
dbt=norm(A(:,5)-A(:,2));
dct=norm(A(:,5)-A(:,3));
ddt=norm(A(:,5)-A(:,4));
i already tried doing it like this,
dt=norm(A(:,5)-A(:,1:4));
but i want it to calculate for each element, so how would it do it?

Accepted Answer

Matt J
Matt J on 4 Apr 2018
Using the attached file,
G = interdists(A)
will return a matrix G(i,j)=norm(A(:,i)-A(:,j)).
  2 Comments
Feliciano Döring
Feliciano Döring on 4 Apr 2018
Edited: Feliciano Döring on 4 Apr 2018
I think that goes a little above of what i want. I have these four variables dat,dbt,dct and ddt and i want just their value. The thing is if i want more variables with these similar formulas how would the code look like i'm trying to reduce the work i have in typing them every time whilst they look alike.
Matt J
Matt J on 4 Apr 2018
Edited: Matt J on 4 Apr 2018
You can use the two-argument form of interdists to get more restricted results.
dt = interdists(A(:,1:4),A(:,5))

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!