
Last chance! 50% off unlimited learning
Sale ends in
Convert foreign object to an sf object
st_as_sf(x, ...)# S3 method for data.frame
st_as_sf(
x,
...,
agr = NA_agr_,
coords,
wkt,
dim = "XYZ",
remove = TRUE,
na.fail = TRUE,
sf_column_name = NULL
)
# S3 method for sf
st_as_sf(x, ...)
# S3 method for sfc
st_as_sf(x, ...)
# S3 method for Spatial
st_as_sf(x, ...)
# S3 method for map
st_as_sf(x, ..., fill = TRUE, group = TRUE)
# S3 method for ppp
st_as_sf(x, ...)
# S3 method for psp
st_as_sf(x, ...)
# S3 method for lpp
st_as_sf(x, ...)
# S3 method for s2_geography
st_as_sf(x, ..., crs = st_crs(4326))
object to be converted into an object class sf
passed on to st_sf, might included named arguments crs
or precision
character vector; see details section of st_sf
in case of point data: names or numbers of the numeric columns holding coordinates
name or number of the character column that holds WKT encoded geometries
passed on to st_point (only when argument coords is given)
logical; when coords or wkt is given, remove these columns from data.frame?
logical; if TRUE
, raise an error if coordinates contain missing values
character; name of the active list-column with simple feature geometries; in case
there is more than one and sf_column_name
is NULL
, the first one is taken.
logical; the value for fill
that was used in the call to map.
logical; if TRUE
, group id labels from map by their prefix before :
coordinate reference system to be assigned; object of class crs
setting argument wkt
annihilates the use of argument coords
. If x
contains a column called "geometry", coords
will result in overwriting of this column by the sfc geometry list-column. Setting wkt
will replace this column with the geometry list-column, unless remove_coordinates
is FALSE
.
# NOT RUN {
pt1 = st_point(c(0,1))
pt2 = st_point(c(1,1))
st_sfc(pt1, pt2)
d = data.frame(a = 1:2)
d$geom = st_sfc(pt1, pt2)
df = st_as_sf(d)
d$geom = c("POINT(0 0)", "POINT(0 1)")
df = st_as_sf(d, wkt = "geom")
d$geom2 = st_sfc(pt1, pt2)
st_as_sf(d) # should warn
data(meuse, package = "sp")
meuse_sf = st_as_sf(meuse, coords = c("x", "y"), crs = 28992, agr = "constant")
meuse_sf[1:3,]
summary(meuse_sf)
library(sp)
x = rbind(c(-1,-1), c(1,-1), c(1,1), c(-1,1), c(-1,-1))
x1 = 0.1 * x + 0.1
x2 = 0.1 * x + 0.4
x3 = 0.1 * x + 0.7
y = x + 3
y1 = x1 + 3
y3 = x3 + 3
m = matrix(c(3, 0), 5, 2, byrow = TRUE)
z = x + m
z1 = x1 + m
z2 = x2 + m
z3 = x3 + m
p1 = Polygons(list( Polygon(x[5:1,]), Polygon(x2), Polygon(x3),
Polygon(y[5:1,]), Polygon(y1), Polygon(x1), Polygon(y3)), "ID1")
p2 = Polygons(list( Polygon(z[5:1,]), Polygon(z2), Polygon(z3), Polygon(z1)),
"ID2")
if (require("rgeos")) {
r = createSPComment(SpatialPolygons(list(p1,p2)))
comment(r)
comment(r@polygons[[1]])
scan(text = comment(r@polygons[[1]]), quiet = TRUE)
library(sf)
a = st_as_sf(r)
summary(a)
}
demo(meuse, ask = FALSE, echo = FALSE)
summary(st_as_sf(meuse))
summary(st_as_sf(meuse.grid))
summary(st_as_sf(meuse.area))
summary(st_as_sf(meuse.riv))
summary(st_as_sf(as(meuse.riv, "SpatialLines")))
pol.grd = as(meuse.grid, "SpatialPolygonsDataFrame")
# summary(st_as_sf(pol.grd))
# summary(st_as_sf(as(pol.grd, "SpatialLinesDataFrame")))
if (require(spatstat.geom)) {
g = st_as_sf(gorillas)
# select only the points:
g[st_is(g, "POINT"),]
}
if (require(spatstat.linnet)) {
data(chicago)
plot(st_as_sf(chicago)["label"])
plot(st_as_sf(chicago)[-1,"label"])
}
# }
Run the code above in your browser using DataLab