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)

Categories

Find more on Structures 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!