Я работаю над циклом длинных и широтных точек для googleways api. Я придумал два способа сделать это в попытке получить доступ к секции точки, показанные в следующей ссылке:объединение списков из пакета googleways для указаний Google?
https://cran.r-project.org/web/packages/googleway/vignettes/googleway-vignette.html
Unforuntaely, так как это использует уникальный ключ не может обеспечить воспроизводимый пример, но Ниже приведены мои попытки, один с использованием mapply, а другой с петлей. Оба работают в производстве ответ в виде списка, однако я не уверен, как распаковать его вытащить маршрут точки, как при прохождении только одну точку:
df$routes$overview_polyline$points
Любые предложения?
library(googleway)
dir_results = mapply(
myfunction,
origin = feed$origin,
destination = feed$destination,
departure = feed$departure
)
OR
empty_df = NULL
for (i in 1:nrow(feed)) {
print(i)
output = google_directions(feed[i,"origin"],
feed[i,"destination"],
mode = c("driving"),
departure_time = feed[i,"departure"],
arrival_time = NULL,
waypoints = NULL, alternatives = FALSE, avoid = NULL,
units = c("metric"), key = chi_directions, simplify = T)
empty_df = rbind(empty_df, output)
}
EDIT **
Намеченный выход будет кадр данных, как показано ниже:. Где "идентификатор" представляет собой оригинальную поездку подается в
lat lon id
1 40.71938 -73.99323 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
2 40.71992 -73.99292 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
3 40.71984 -73.99266 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
4 40.71932 -73.99095 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
5 40.71896 -73.98981 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
6 40.71824 -73.98745 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
7 40.71799 -73.98674 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
8 40.71763 -73.98582 40.7193908691406+-73.9932174682617 40.7096214294434+-73.9497909545898
EDIT **** dput предоставленный для ответа на вопрос о списке данных к списку пар:
structure(list(origin = c("40.7193908691406 -73.9932174682617",
"40.7641792297363 -73.9734268188477", "40.7507591247559 -73.9739990234375"
), destination = c("40.7096214294434-73.9497909545898", "40.7707366943359-73.9031448364258",
"40.7711143493652-73.9871368408203")), .Names = c("origin", "destination"
), row.names = c(NA, 3L), class = "data.frame")
код страны является основным l ooks, как например:
feed = sqlQuery(con, paste("select top 10
longitude as px,
latitude as py,
dlongitude as dx ,
dlatitude as dy,
from mydb"))
, а затем перед подачей его мой канал кадр данных выглядит так (и может игнорировать отход я использовал, что для расстояния апи):
origin destination departure
1 40.7439613342285 -73.9958724975586 40.716911315918-74.0121383666992 2017-03-03 01:00:32
2 40.7990493774414 -73.9685516357422 40.8066520690918-73.9610137939453 2017-03-03 01:00:33
3 40.7406234741211 -74.0055618286133 40.7496566772461-73.9834671020508 2017-03-03 01:00:33
4 40.7172813415527 -73.9953765869141 40.7503852844238-73.9811019897461 2017-03-03 01:00:33
5 40.7603607177734 -73.9817123413086 40.7416114807129-73.9795761108398 2017-03-03 01:00:34
Добавлен правку с предполагаемым выходом – LoF10
и координаты всех точек в полилинии? – SymbolixAU
точно так, что lat lon представляет точки в полилинии – LoF10