Bind rows (features) of sf objects
Bind rows (features) of sf objects
Bind columns (variables) of sf objects
## S3 method for class 'sf' rbind(..., deparse.level = 1) ## S3 method for class 'sf' cbind(..., deparse.level = 1, sf_column_name = NULL) st_bind_cols(...)
... |
objects to bind; note that for the rbind and cbind methods, all objects have to be of class |
deparse.level |
integer; see rbind |
sf_column_name |
character; specifies active geometry; passed on to st_sf |
both rbind
and cbind
have non-standard method dispatch (see cbind): the rbind
or cbind
method for sf
objects is only called when all arguments to be binded are of class sf
.
If you need to cbind
e.g. a data.frame
to an sf
, use data.frame directly and use st_sf on its result, or use bind_cols; see examples.
st_bind_cols
is deprecated; use cbind
instead.
cbind
called with multiple sf
objects warns about multiple geometry columns present when the geometry column to use is not specified by using argument sf_column_name
; see also st_sf.
crs = st_crs(3857) a = st_sf(a=1, geom = st_sfc(st_point(0:1)), crs = crs) b = st_sf(a=1, geom = st_sfc(st_linestring(matrix(1:4,2))), crs = crs) c = st_sf(a=4, geom = st_sfc(st_multilinestring(list(matrix(1:4,2)))), crs = crs) rbind(a,b,c) rbind(a,b) rbind(a,b) rbind(b,c) cbind(a,b,c) # warns if (require(dplyr)) dplyr::bind_cols(a,b) c = st_sf(a=4, geomc = st_sfc(st_multilinestring(list(matrix(1:4,2)))), crs = crs) cbind(a,b,c, sf_column_name = "geomc") df = data.frame(x=3) st_sf(data.frame(c, df)) dplyr::bind_cols(c, df)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.