我想计算经纬度(lat1, lon1)与参考点(52.92343, 5.04127)之间的距离。我希望对数据集中每一行都执行此操作,因此距离将使用每一行中的参考点来计算。这意味着我需要创建一个新的列用于存储以公里为单位的距离。我可以想象您需要使用某种循环函数,但是到目前为止,我还没有找到如何完成此操作的方法。我认为我将不得不使用geodist
或geosphere
软件包,但可惜我没有成功。请问如何计算这些距离?
structure(list(Day = c("26", "05", "17", "18", "19", "19"), Month = c("07",
"08", "08", "08", "08", "08"), Year = c("2021", "2021", "2021",
"2021", "2021", "2021"), Location.Receiver = c("Den Oever Ijsselmeer",
"Medemblik Ijsselmeer, gemaal", "Den Oever Ijsselmeer", "Den Oever Ijsselmeer",
"Den Oever Ijsselmeer", "Den Oever Ijsselmeer"), Transmitter = c("A69-1602-59776",
"A69-1602-59777", "A69-1602-59776", "A69-1602-59776", "A69-1602-59769",
"A69-1602-59776"), Batch.location = c("Den Oever", "Den Oever",
"Den Oever", "Den Oever", "Den Oever", "Den Oever"), BatchNr = c(8,
9, 8, 8, 1, 8), Latitude = c(52.92343, 52.76098, 52.92343, 52.92343,
52.92343, 52.92343), Longitude = c(5.04127, 5.12172, 5.04127,
5.04127, 5.04127, 5.04127), Date = structure(c(18834, 18844,
18856, 18857, 18858, 18858), class = "Date")), row.names = c(1095729L,
1180267L, 1072657L, 1092667L, 716601L, 1077415L), class = "data.frame")
dput()
输出不完整。 - Phil