g_25000_c_polygons_only <- g_25000_c[st_is(x = g_25000_c, type = "POLYGON"),] # 
with a comma


El 10/02/2023 a las 21:33, Manuel Spínola escribió:
Thnak you very much Bede-Fazekas.

I got the following error:

g_25000_c_polygons_only <- g_25000_c[st_is(x = g_25000_c, type = "POLYGON")]

Error in `[.data.frame`(x, i) : undefined columns selected

El vie, 10 feb 2023 a las 11:53, Bede-Fazekas Ákos (<bfalevl...@gmail.com>)
escribió:

Dear Manuel,

technically, the result of st_intersection(x, y), where both x and y are
POLYGONs, can be POINT, LINESTRING, POLGYON and GEOMETRY as well. The
result is GEOMETRY if the type of the different features is not the same
(e.g. POLYGON+POINT).
You can subset the result in this way:
g_25000_c_polygons_only <- g_25000_c[st_is(x = g_25000_c, type =
"POLYGON")]

HTH,
Ákos
___________
Ákos Bede-Fazekas
Centre for Ecological Research, Hungary

2023.02.10. 18:32 keltezéssel, Manuel Spínola írta:
Dear list members,

I am trying to "crop" a polygon (grid) with a polygon, but the result is
an
sf object Geometry type: GEOMETRY, instead of an sf object Geometry type:
POLYGON.

How can I obtain an sf POLYGON?

nc = st_read(system.file("shape/nc.shp", package="sf"))



nc <- st_transform(nc, 3857)



g_50000 <- st_make_grid(nc, cellsize = 50000) |> st_as_sf()



g_50000 <- g_50000[nc, ]



g_50000_d <- st_union(g_50000)



g_25000 = st_make_grid(g_50000_d, cellsize = 25000) |> st_as_sf()



g_25000 # Geometry type: POLYGON



g_25000_c <- st_intersection(g_25000, g_50000_d)



g_25000_c # Geometry type: GEOMETRY




_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo



--
Marcelino de la Cruz Rot
Coordinador funcional de Biología
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

Reply via email to