I have a set of 3D points (x,y,z) , I want to take each point and calculate the sum of distances from all other points from this point and find the minimum of it , could you help me with codes?
Show older comments
I have a set of 3D points (x,y,z) , I want to take each point and calculate the sum of distances from all other points from this point and find the minimum of it , could you help me with codes?
Answers (2)
Image Analyst
on 30 Jun 2014
Edited: Image Analyst
on 30 Jun 2014
Did you try this:
distances = sqrt((xp - xyz(:,1))^2 + (yp - xyz(:,2))^2 + (zp - xyz(:,3))^2);
sumOfDistances = sum(distances);
[minDistance, indexOfMin] = min(distances);
where (xp, yp, zp) is the single point, and xyz is the array of all points?
2 Comments
Akshit
on 1 Jul 2014
Image Analyst
on 1 Jul 2014
So put it inside a loop over p and do that code for every point p. Why can't you do that?
Matt J
on 30 Jun 2014
0 votes
Categories
Find more on Descriptive Statistics 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!