| st_geometry | R Documentation |
Get, set, replace or rename geometry from an sf object
## S3 method for class 'sfc'
st_geometry(obj, ...)
st_geometry(obj, ...)
## S3 method for class 'sf'
st_geometry(obj, ...)
## S3 method for class 'sfc'
st_geometry(obj, ...)
## S3 method for class 'sfg'
st_geometry(obj, ...)
st_geometry(x) <- value
st_set_geometry(x, value)
st_drop_geometry(x, ...)
## S3 method for class 'sf'
st_drop_geometry(x, ...)
## Default S3 method:
st_drop_geometry(x, ...)
obj |
object of class |
... |
ignored |
x |
object of class |
value |
object of class |
when applied to a data.frame and when value is an object of class sfc, st_set_geometry and st_geometry<- will first check for the existence of an attribute sf_column and overwrite that, or else look for list-columns of class sfc and overwrite the first of that, or else write the geometry list-column to a column named geometry. In case value is character and x is of class sf, the "active" geometry column is set to x[[value]].
the replacement function applied to sf objects will overwrite the geometry list-column, if value is NULL, it will remove it and coerce x to a data.frame.
if x is of class sf, st_drop_geometry drops the geometry of its argument, and reclasses it accordingly; otherwise it returns x unmodified.
st_geometry returns an object of class sfc, a list-column with geometries
st_geometry returns an object of class sfc. Assigning geometry to a data.frame creates an sf object, assigning it to an sf object replaces the geometry list-column.
df = data.frame(a = 1:2)
sfc = st_sfc(st_point(c(3,4)), st_point(c(10,11)))
st_geometry(sfc)
st_geometry(df) <- sfc
class(df)
st_geometry(df)
st_geometry(df) <- sfc # replaces
st_geometry(df) <- NULL # remove geometry, coerce to data.frame
sf <- st_set_geometry(df, sfc) # set geometry, return sf
st_set_geometry(sf, NULL) # remove geometry, coerce to data.frame
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.