我有一个71x4的表格,该表格代表:一些气候站的名称以及相应的纬度,经度和海拔。
在此列表中,我想一起找到最近的点。我的意思是在输出中,我想每拥有71个车站,就拥有一个最近的车站。我想使用欧几里得距离。 我在google drive
中分享了{
"key1":"value1",
"key2":"value2"
}
更新 这是我的代码。我认为,如果我可以在一个工作站上运行我的代码,然后使用for循环将其通用化,那就太棒了。我有一些站名以及相应的纬度,经度和海拔。我想找到最近的车站。实际上,对于每一行,我需要计算与所有其他行的距离,并选择距离最小的行。
coordinates.mat
我不知道如何优化它。每次我想去下一个车站时,都应该手动更改此代码,并查看坐标列表以找到最近车站的名称。 如您所见,我不是专业人士。我想在我的研究领域(水资源管理)中做到这一点,并且我并不专门研究Matlab代码。
答案 0 :(得分:1)
最简单的方法是将knnsearch(...,'k',1)
与'K',1
一起使用,因为您希望看到最近的点。但是,该功能需要统计和机器学习工具箱。否则,您将需要自己编写代码,循环遍历所有点并按照前面所述计算到所有其他点的距离。