Calculate total miles traveled from vectors of lat / lon

前端 未结 3 551
我在风中等你
我在风中等你 2020-12-02 02:10

I have a data frame with data about a driver and the route they followed. I\'m trying to figure out the total mileage traveled. I\'m using the geosphere packa

3条回答
  •  -上瘾入骨i
    2020-12-02 02:38

    How about this?

    ## Setup
    library(geosphere)
    metersPerMile <- 1609.34
    pts <- df1[c("lon", "lat")]
    
    ## Pass in two derived data.frames that are lagged by one point
    segDists <- distVincentyEllipsoid(p1 = pts[-nrow(df),], 
                                      p2 = pts[-1,])
    sum(segDists)/metersPerMile
    # [1] 1013.919
    

    (To use one of the faster distance calculation algorithms, just substitute distCosine, distVincentySphere, or distHaversine for distVincentyEllipsoid in the call above.)

提交回复
热议问题