我想计算从一个点到另一个点的距离。从下面的矩阵中,您可以看到到所有点的距离是同时计算的。但我只想指出其余一点。如何在公式中定义?例如,我想知道从属性6到其他19个属性的距离,所以我们只有一条线。
library(geosphere)
df<-structure(list(Latitude = c(-23.8, -23.8, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9,
+ -23.9, -23.9, -23.9, -23.9, -23.9), Longitude = c(-49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.7,
+ -49.7, -49.7, -49.7, -49.7, -49.6, -49.6, -49.6, -49.6), Production = c(526, 350, 526, 469, 285, 175, 175, 350, 350, 175, 350, 175, 175, 364,
+ 175, 175, 350, 45.5, 54.6)), class = "data.frame", row.names = c(NA, -19L))
coordinaties<-df[,1:2]
d<-as.dist(distm(coordinaties[,2:1]))
data.matrix(d)
1 2 3 4 5 6 7 8
1 0.00 0.00 11075.61 11075.61 11075.61 11075.61 11075.61 11075.61
2 0.00 0.00 11075.61 11075.61 11075.61 11075.61 11075.61 11075.61
3 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
4 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
5 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
6 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
7 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
8 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
9 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
10 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
11 15048.01 15048.01 10183.02 10183.02 10183.02 10183.02 10183.02 10183.02
12 15048.01 15048.01 10183.02 10183.02 10183.02 10183.02 10183.02 10183.02
13 15048.01 15048.01 10183.02 10183.02 10183.02 10183.02 10183.02 10183.02
14 15048.01 15048.01 10183.02 10183.02 10183.02 10183.02 10183.02 10183.02
15 15048.01 15048.01 10183.02 10183.02 10183.02 10183.02 10183.02 10183.02
16 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
17 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
18 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
19 11075.61 11075.61 0.00 0.00 0.00 0.00 0.00 0.00
9 10 11 12 13 14 15 16
1 11075.61 11075.61 15048.01 15048.01 15048.01 15048.01 15048.01 11075.61
2 11075.61 11075.61 15048.01 15048.01 15048.01 15048.01 15048.01 11075.61
3 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
4 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
5 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
6 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
7 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
8 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
9 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
10 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
11 10183.02 10183.02 0.00 0.00 0.00 0.00 0.00 10183.02
12 10183.02 10183.02 0.00 0.00 0.00 0.00 0.00 10183.02
13 10183.02 10183.02 0.00 0.00 0.00 0.00 0.00 10183.02
14 10183.02 10183.02 0.00 0.00 0.00 0.00 0.00 10183.02
15 10183.02 10183.02 0.00 0.00 0.00 0.00 0.00 10183.02
16 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
17 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
18 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
19 0.00 0.00 10183.02 10183.02 10183.02 10183.02 10183.02 0.00
17 18 19
1 11075.61 11075.61 11075.61
2 11075.61 11075.61 11075.61
3 0.00 0.00 0.00
4 0.00 0.00 0.00
5 0.00 0.00 0.00
6 0.00 0.00 0.00
7 0.00 0.00 0.00
8 0.00 0.00 0.00
9 0.00 0.00 0.00
10 0.00 0.00 0.00
11 10183.02 10183.02 10183.02
12 10183.02 10183.02 10183.02
13 10183.02 10183.02 10183.02
14 10183.02 10183.02 10183.02
15 10183.02 10183.02 10183.02
16 0.00 0.00 0.00
17 0.00 0.00 0.00
18 0.00 0.00 0.00
19 0.00 0.00 0.00
谢谢!
请参见?distm
:您可以使用两组点:
distm(coordinaties[6,2:1],coordinaties[-6,2:1])
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
[1,] 11075.61 11075.61 0 0 0 0 0 0 0 10183.02 10183.02 10183.02
[,13] [,14] [,15] [,16] [,17] [,18]
[1,] 10183.02 10183.02 0 0 0 0