通过R中的属性提取sf对象中的点

Extracting points in sf object by attributes in R

我从一个点 shapefile 创建了一个 sf 对象,并且想通过选择仅具有某些属性的点来创建一个新对象。在这种情况下,只有那些在 Subcategor 列中具有 "Survey Start" 的点。改变 sp/rgdal 的想法很难。抱歉这个例子是不可重现的,但我希望它足够简单来回答。

data_pts <- st_read("Point.shp")

# I tried two approaches. More traditional, and something tidyvers-ey
field_id_pts <- data_pts[data_pts$Subcategor == "Survey Start",]
field_id_pts <- data_pts %>% select(Subcategor == "Survey Start")

None 他们的工作。在此先感谢您的帮助。

您可以使用 subset 轻松地 select 基于 "Subcategor" 变量的点。

field_id_pts <- subset(data_pts, data_pts$Subcategor == "Survey Start")