Google Расстояния в R между двумя фреймами данных

У меня есть два кадра данных. У каждого есть приблизительно 600 местоположений людей на карте, например так:

Names<-c("Mike","Ron","Joe")
Lat<-c(61.5,63.2,50.1)
Long<-c(-140.2,-139.2,-145.6)
df<-data.frame(Names,Lat,Long)

У другого есть места, в которые эти люди могут попасть:

Places<-c("ClinicA","ClinicB","ClinicC")
Lat<-c(58.5,50.2,40.1)
Long<-c(-135.2,-133.2,-140.6)
df1<-data.frame(Places,Lat,Long)

Я знаю, что если у меня есть отдельный набор координат, я могу использовать googleway, чтобы получить расстояния между ними, вот так:

df <- google_distance(origins = list(c("Melbourne Airport, Australia"),
                                 c("MCG, Melbourne, Australia"),
                                 c(-37.81659, 144.9841)),
                  destinations = c("Portsea, Melbourne, Australia"),
                  key = key)

Мой вопрос заключается в том, что я хотел бы пройтись по каждому отдельному человеку, рассчитать расстояние до каждого из местоположений мест (т.е. вернуть три разных расстояния для каждого человека), а затем оставить только наименьшее расстояние для каждого. Результирующий фрейм данных, надеюсь, будет:

Ряды: Имя, широта, длинна, Ближайшее место, Расстояние до этого места

Я предполагаю, что это может быть цикл "для", но я немного заблудился на этом этапе. Любая помощь будет оценена, спасибо!

0 ответов

Другие вопросы по тегам