试图确定国家 R 的质心之间的距离

Trying to determine the distances between centroids of countries R

我目前有一个国家代码对(如美国、俄罗斯、加拿大等)的数据框。是否有一个函数可以根据国家代码确定国家的质心,以便我可以找到对之间的距离国家?或者有没有函数可以给我每个国家的质心坐标(例如经度和纬度)?

这是我从之前的数据集中筛选出来以供参考的前几行数据集。

你可以抓取这个google public dataset
我之前关于使用包 CoordinateCleaner 中的 countryref 数据集的建议不起作用,因为我发现有不同位置的重复项。

library(rvest)
library(dplyr)

url <- 'https://developers.google.com/public-data/docs/canonical/countries_csv'
webpage <- read_html(url)
centroids <- url %>% read_html %>% html_nodes('table') %>% html_table() %>% as.data.frame

data <- data.frame(V1 = c("US","US"), V2 = c('VN','ZA'))
data %>% inner_join(centroids,by = c("V1"="country")) %>% inner_join(centroids,by = c("V2"="country"))

  V1 V2 latitude.x longitude.x        name.x latitude.y longitude.y       name.y
1 US VN   37.09024   -95.71289 United States   14.05832   108.27720      Vietnam
2 US ZA   37.09024   -95.71289 United States  -30.55948    22.93751 South Africa