我有以下数据框:
library(dplyr)
d1 <- data_frame(
title = c("base1", "base2", "base3", "base4"),
lat = c(57.3, 58.8, 47.2, 57.8),
long = c(0.4, 3.4, 3.5, 1.2))
d2 <- data_frame(
tas = c("tas1", "tas2", "tas3", "tas4"),
Base= c ("base1", "base2", "base3", "base4"),
lat=c(54.6, 56.4, 54.2, 54.6),
long = c(1.2, 3.4, 3.5, 56.6))
我想做的是计算 d2 中的 tas 和 d1 中的标题之间的距离(以英里为单位)。因此,在 d2 中,tas1 的坐标为 54.6 lat 和 1.2 long,并且在“Base”列中有“base1”。所以我想计算54.6lat乘1.2long和57.3lat和0.4lon之间的距离。
我尝试使用GeoDistanceInMetresMatrix
下面详述的函数来执行此操作,但该函数并没有完全给我想要的结构。
下面的文章提供了有关 GeoDistanceInMetresMatrix 的一些信息
http://eurekastatistics.com/calculating-a-distance-matrix-for-geographic-points-using-r/
这就是我希望数据的样子:
df <- data_frame(
tas = c("tas1", "tas2", "tas3", "tas4"),
Base= c ("base1", "base2", "base3", "base4"),
lat=c(54.6, 56.4, 54.2, 54.6),
long = c(1.2, 3.4, 3.5, 56.6),
difference_miles = c(23, 35, 56, 23))
我整个下午都在看这个并且不能完全正确所以任何帮助将不胜感激!