This is a major rewrite of the {opencage} package. opencage_forward() and opencage_reverse() have been deprecated and are superseded by oc_forward() and oc_reverse(), respectively. In addition there are two new functions oc_forward_df() and oc_reverse_df(), which geocode place names or addresses into geographic coordinates (latitude and longitude) or vice versa, and return a data frame.
The new features include:
oc_forward() and oc_reverse() return either lists of data frames, JSON strings, GeoJSON strings, or URLs to be sent to the API (the latter for debugging purposes).oc_forward_df() and oc_reverse_df() take a data frame or vectors as input and return a data frame with the geocoding results, optionally with the source data frame bound to the results data frame.output), so it is possible to serially (reverse) geocode lists of locations or coordinates. The geocoding functions show a progress indicator when more than one placename or latitude/longitude pair is provided.countrycodes in accordance with the OpenCage API (#44). The countrycodes can now be provided in upper or lower case (#47).oc_bbox() now makes it easier to create a list of bounding boxes from numeric vectors, bbox objects or data frames.oc_forward and oc_forward_df now support OpenCage’s proximity parameter. The results of the geocoding request will be biased towards that location (#60).oc_points() now makes it easier to create a list of point coordinates from numeric vectors or data frames to pass to the proximity argument for example.roadinfo parameter (#65). If set to TRUE, OpenCage attempts to match the nearest road (rather than an address) and provides additional road and driving information.language argument are not validated anymore, since the language tags used by OpenStreetMap and hence OpenCage do not always conform with the IETF BCP 47 standard (#90). The languagecodes, which were stored in {opencage} as external data, have therefore been omitted from the package. In addition, it is now possible to specify language = "native", so OpenCage will attempt to return the results in the “official” language of the country.oc_config(). If you want OpenCage to have no record of the contents of your queries, you can also set the no_record parameter for the active R session with oc_config() (as opposed to providing the parameter with each function call). All oc_config() settings can be set more permanently via options() or environment variables, see help(oc_config).opencage_forward(), opencage_reverse(), and opencage_key() are soft-deprecated.opencage_forward() and opencage_reverse() will always output strings as characters, i.e. they won’t coerce to factor depending on the stringsAsFactor option.opencage_key() returns the OpenCage API key invisibly.NA values are not allowed anymore for the placename or latitude/longitude arguments, because OpenCage throws a HTTP 400 ‘bad query’ error when the query is empty (#98).countrycodes is now code, not Code.code_message, which were stored in {opencage} as external data, have been deleted. For more information on OpenCage’s HTTP status codes see https://opencagedata.com/api#codes.countrycode argument can be used for Namibia (#24, #25).add_request parameter (for appending original query to results).abbrv parameter, see https://blog.opencagedata.com/post/160294347883/shrtr-pls.no_record parameter, see https://blog.opencagedata.com/post/145602604628/more-privacy-with-norecord-parameterNEWS.md file to track changes to the package.