validate_wkt takes a vector of WKT objects and validates them, returning a data.frame containing the status of each entry and (in the case it cannot be parsed) any comments as to what, in particular, may be wrong with it. It does not, unfortunately, check whether the object meets the WKT spec - merely that it is formatted correctly.




a character vector of WKT objects.


a data.frame of two columns, is_valid (containing TRUE or FALSE values for whether the WKT object is parseable and valid) and comments (containing any error messages in the case that the WKT object is not). If the objects are simply NA, both fields will contain NA.

See also

wkt_correct() for correcting WKT objects that fail validity checks due to having a non-default orientation.


wkt <- c("POLYGON ((30 10, 40 40, 20 40, 10 20, 30 10))", "ARGHLEFLARFDFG", "LINESTRING (30 10, 10 90, 40 some string)") validate_wkt(wkt)
#> is_valid #> 1 FALSE #> 2 FALSE #> 3 FALSE #> comments #> 1 The WKT object has a different orientation from the default. Use ?wkt_correct to fix. #> 2 Object could not be recognised as a supported WKT type #> 3 bad lexical cast: source type value could not be interpreted as target at 'some' in 'linestring (30 10, 10 90, 40 some string)'