Calculating distance between points from imported data table.
显示 更早的评论
Hello everyone, I have two tables, one with X coordinates of a point, and the other with the respective Y coordinates. They are all sorted by time, meaning that the first value of the column happened before the one after it (even though I do not have the time showing). I want to calculate the distance between those points. However, I am not getting the right results. Can someone help me out?
My code is as follows:
X = xlsread('Results','A1:A191'); Y = xlsread('Results','B1:B191'); i = 2:length(X); j = 2:length(Y); if i == j Distance = ((X(i)-X(i-1)).^2 + (Y(j)-Y(j-1)).^2).^(1/2); end
回答(1 个)
Image Analyst
2018-9-5
If you have the stats toolbox, you can easily and simply use pdist2() to find the distance of every point to every point.
distances = pdist2([x,y], [x,y]);
After that you can get whatever distance you want from the distances array.
Does that help?
2 个评论
Ricardo Whitaker
2018-9-5
编辑:Ricardo Whitaker
2018-9-5
Image Analyst
2018-9-5
Maybe you simply want the diff() function to compute differences between adjacent elements???
类别
在 帮助中心 和 File Exchange 中查找有关 Nearest Neighbors 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!