我正在尝试分析两个位置之间的平均距离,以便为自动批准旅行距离提供一个可接受的截止点。我已经引用了(geosphere distHaversine() & dplyr - error wrong length for vector, should be 2)和(Getting Error in .pointsToMatrix(p1) : Wrong length for a vector, should be 2),但是我无法调试错误并完成我的分析。
data frame是这样的,有10行数据。
df <- c(lat1,long1,lat2,long2)df matrix with 10 rows of data
当我尝试使用以下代码时
df %>% rowwise() %>% mutate(HVRSINE = distHaversine(c(df$long1,df$lat1),c(df$long2,df$lat2)))错误如下所示:
Error: Problem with `mutate()` column `HVRSINE`.
x Wrong length for a vector, should be 2
The error occurred in row 1.当我手动编写lat,long for in disthaversine时,输出效果很好。
我做错了什么?
发布于 2021-05-25 22:33:44
试一试
library(tidyverse)
df %>%
mutate(HVRSINE = unlist(pmap(list(a = long1,
b = lat1,
x = long2,
y = lat2),
~ distHaversine(c(..1, ..2), c(..3, ..4)))))https://stackoverflow.com/questions/67690059
复制相似问题