Returns a tibble of the known locations from locationTbl
that are closest to the vector of target locations specified by longitude
and latitude
. Only a single known location is returned for each
incoming target location. If no known location is found for a particular
incoming location, that record in the tibble will contain all NA
.
table_getNearestLocation(
locationTbl = NULL,
longitude = NULL,
latitude = NULL,
distanceThreshold = NULL
)
Tibble of known locations.
Vector of longitudes in decimal degrees E.
Vector of latitudes in decimal degrees N.
Distance in meters.
Tibble of known locations.
library(MazamaLocationUtils)
locationTbl <- get(data("wa_monitors_500"))
# Wenatchee
lon <- -120.325278
lat <- 47.423333
# Too small a distanceThreshold will not find a match
table_getNearestLocation(locationTbl, lon, lat, distanceThreshold = 50) %>% str()
#> tibble [1 × 13] (S3: tbl_df/tbl/data.frame)
#> $ locationID : chr NA
#> $ locationName: chr NA
#> $ longitude : num NA
#> $ latitude : num NA
#> $ elevation : num NA
#> $ countryCode : chr NA
#> $ stateCode : chr NA
#> $ countyName : chr NA
#> $ timezone : chr NA
#> $ houseNumber : chr NA
#> $ street : chr NA
#> $ city : chr NA
#> $ postalCode : chr NA
# Expanding the distanceThreshold will find one
table_getNearestLocation(locationTbl, lon, lat, distanceThreshold = 5000) %>% str()
#> tibble [1 × 13] (S3: tbl_df/tbl/data.frame)
#> $ locationID : chr "c26mvd3xm6"
#> $ locationName: chr "us.wa_c26mvd"
#> $ longitude : num -120
#> $ latitude : num 47.4
#> $ elevation : num 249
#> $ countryCode : chr "US"
#> $ stateCode : chr "WA"
#> $ countyName : chr "Chelan"
#> $ timezone : chr "America/Los_Angeles"
#> $ houseNumber : chr NA
#> $ street : chr NA
#> $ city : chr "Wenatchee"
#> $ postalCode : chr "98801"