Вот способ адресации первой части вашего сообщения с помощью base
:
Data
foo <- tibble::tribble(~Start_Latitude, ~Start_Longitude, ~End_Latitude, ~End_Longitude, ~Date, ~Avg_Speed,
41.92446, -87.68654, 41.93184, -87.67459, '2020-06-11 6:00', 40,
41.90367, -87.63233, 41.91600, -87.61911, '2020-06-11 6:00', 35,
41.86468, -87.76746, 41.82341, -87.69162, '2020-06-11 6:00', 54,
41.96075, -87.74756, 41.76543, -87.67459, '2020-06-11 6:00', 45)
Code
foo$St_lat_long = paste(foo$Start_Latitude, foo$Start_Longitude, sep = ", ")
foo$End_lat_long = paste(foo$End_Latitude, foo$End_Longitude, sep = ", ")
foo2 <- foo[,c(7,8,5,6)]
foo2$ID <- seq.int(nrow(foo2))
Вывод
St_lat_long End_lat_long Date Avg_Speed ID
41.92446, -87.68654 41.93184, -87.67459 2020-06-11 6:00 40 1
41.90367, -87.63233 41.916, -87.61911 2020-06-11 6:00 35 2
41.86468, -87.76746 41.82341, -87.69162 2020-06-11 6:00 54 3
41.96075, -87.74756 41.76543, -87.67459 2020-06-11 6:00 45 4
Данные сопоставления
В своем сообщении вы предоставили следующие данные:
foo <- tibble::tribble(~Latitude, ~Longitude, ~Date, ~Avg_Speed, ~ID,
41.92446, -87.68654, "2020-06-11 6:00", 40, 1, 41.90367,
-87.63233, "2020-06-11 6:00", 35, 2, 41.86468, -87.76746,
"2020-06-11 6:00", 54, 3, 41.96075, -87.74756, "2020-06-11 6:00",
45, 4)
#> # A tibble: 4 x 5
#> Latitude Longitude Date Avg_Speed ID
#> <dbl> <dbl> <chr> <dbl> <dbl>
#> 1 41.9 -87.7 2020-06-11 6:00 40 1
#> 2 41.9 -87.6 2020-06-11 6:00 35 2
#> 3 41.9 -87.8 2020-06-11 6:00 54 3
#> 4 42.0 -87.7 2020-06-11 6:00 45 4
Создано 21.06.2020 пакетом REPEX (v0.3.0)
Создание карты с широтой и долготой
Вот подход к отображению последней части вашего вопроса с помощью пакета leaflet
:
library(leaflet) %>%
leaflet(foo) %>%
addTiles() %>%
addCircleMarkers(lat = ~Latitude,
lng = ~Longitude,
popup = paste("<b>Date:</b>", foo$Date, "<br>",
"<b>Avergae Speed:</b>", foo$Avg_Speed, "<br>",
"<b>ID:</b>", foo$ID, "<br>"))
Создано 21.06.2020 пакет REPEX (v0.3.0)
Вывод
Я опубликовал интерактивный буклет в своих RPub-файлах. Вот ссылка