This function connects to Czech State Administration of Land Surveying and Cadastre (https://www.cuzk.cz/en) API to geocode an address. As consequence it is implemented only for Czech addresses.
geocode(address, crs = 4326)
point to be geocoded, as character (vector)
coordinate reference system of output; default = WGS84
Input of the function are an address to geocode (or a vector of addresses) and expected Coordinate Reference System of output (default is WGS84 = EPSG:4326, but in some use cases inž. Křovák = EPSG:5514 may be more relevant).
NA's in input are considered an error.
Output is a
sf data frame of spatial points.
Depending on the outcome of matching the address to RÚIAN data there is a number of possible outcomes:
All items were *matched exactly*: the returned
frame has the same number of rows as there were elements in vector to
be geocoded. The field target will have zero duplicates.
Some items had *multiple matches*: the returned
frame has more rows than the there were elements in vector to be geocoded.
In the field target will be duplicate values. Note that the RÚIAN API
limits multiple matches to 10.
Some (but not all) items had *no match* in RUIAN data: the returned
sf data frame will have fewer rows than the vector sent.
to be geocoded elements. Some values will be missing from field target.
No items were matched at all: the function returns empty data frame and a message.
The CUZK API is down or overloaded: the function returns empty data frame and a message.
Note that character encoding is heavily platform dependent, and you may need to convert to UTF-8,
e.g. by running
address <- iconv(address, from = "windows-1250", to = "UTF-8")
before calling the function.
Usage of the ČÚZK API is governed by ČÚZK Terms & Conditions - https://geoportal.cuzk.cz/Dokumenty/Podminky.pdf.
sf data frame with 3 variables + geometry
the address searched (address input)
type of record matched by API
address as returned by API / recorded in RÚIAN
hidden column with spatial point data
asdf <- geocode("Gogolova 212, Praha 1") print(asdf)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.