Return an OSM Overpass query as a data.frame object.
Source:R/get-osmdata-df.R
osmdata_data_frame.Rd
Return an OSM Overpass query as a data.frame object.
Arguments
- q
An object of class
overpass_query
constructed with opq and add_osm_feature or a string with a valid query, such as"(node(39.4712701,-0.3841326,39.4713799,-0.3839475);); out;"
. May be be omitted, in which case the attributes of the data.frame will not include the query. See examples below.- doc
If missing,
doc
is obtained by issuing the overpass query,q
, otherwise either the name of a file from which to read data, or an object of class xml2 returned from osmdata_xml.- quiet
suppress status messages.
- stringsAsFactors
Should character strings in the 'data.frame' be coerced to factors?
Details
If you are not interested in the geometries of the results, it's a
good option to query for objects that match the features only and forget
about members of the ways and relations. You can achieve this by passing
the parameter body = "tags"
to opq
.
See also
Other extract:
osmdata_sc()
,
osmdata_sf()
,
osmdata_sp()
,
osmdata_xml()
Examples
if (FALSE) { # \dontrun{
hampi_df <- opq ("hampi india") %>%
add_osm_feature (key = "historic", value = "ruins") %>%
osmdata_data_frame ()
attr (hampi_df, "bbox")
attr (hampi_df, "overpass_call")
attr (hampi_df, "meta")
# Complex query as a string (not possible with regular osmdata functions)
q <- '[out:csv(::type, ::id, "name:ca", "wikidata")][timeout:50];
area[name="Països Catalans"][boundary=political]->.boundaryarea;
rel(area.boundaryarea)[admin_level=8][boundary=administrative];
map_to_area -> .all_level_8_areas;
( nwr(area.boundaryarea)[amenity=townhall]; >; );
is_in;
area._[admin_level=8][boundary=administrative] -> .level_8_areas_with_townhall;
(.all_level_8_areas; - .level_8_areas_with_townhall;);
rel(pivot);
out tags;'
no_townhall <- osmdata_data_frame (q)
no_townhall
} # }