A unique locationID is created for each incoming
longitude
and latitude
.
See MazamaCoreUtils::createLocationID
for details.
At precision = 10
, this results in a maximum error of 0.6 meters which
is more than precise enough for environmental monitoring studies making use
of this package.
An excellent way to become familiar with geohash is through the GeoHash Explorer.
location_createID(
longitude = NULL,
latitude = NULL,
algorithm = c("geohash", "digest"),
precision = 10
)
Vector of longitudes in decimal degrees E.
Vector of latitudes in decimal degrees N.
Algorithm to use -- either "geohash"
or "digest"
.
precision
argument used when encoding with "geohash"
.
Vector of character locationIDs.
The "digest"
algorithm is deprecated but provided for backwards
compatibility with databases that were built using locationIDs generated
with this algorithm.
https://en.wikipedia.org/wiki/Decimal_degrees
https://www.johndcook.com/blog/2017/01/10/probability-of-secure-hash-collisions/
library(MazamaLocationUtils)
# Wenatchee
lon <- -120.325278
lat <- 47.423333
locationID <- location_createID(lon, lat)
print(locationID)
#> [1] "c26mvcjucy"
location_createID(lon, lat, algorithm = "geohash")
#> [1] "c26mvcjucy"
location_createID(lon, lat, algorithm = "geohash", precision = 7)
#> [1] "c26mvcj"