在 R 中使用 sf 查找最近的特征

Find nearest features using sf in R

我想使用 R 中的 sf 包在 R 中的一个简单要素数据框中找到与另一个简单要素数据框中的一组点最近的多边形。我一直在使用 'st_is_within_distance'在 'st_join' 语句中,但这 returns 给定距离内的所有内容,而不仅仅是最近的特征。

之前我使用 'rgeos' 包中的 'gDistance' 具有 'sp' 功能,如下所示:

m = gDistance(a, b, byid = TRUE)
row = apply(m, 2, function(x) which(x == min(x)))
labels = unlist(b@data[row, ]$NAME)
a$NAME <- labels

我想将这种使用 rgeos 和 sp 为一组点寻找最近特征的方法转化为使用 sf。非常感谢任何意见或建议。

看来我的问题的解决方案已经发布了 -- https://gis.stackexchange.com/questions/243994/how-to-calculate-distance-from-point-to-linestring-in-r-using-sf-library-and-g -- 这种方法得到了我需要的 sf 点特征 'a' 和 sf 多边形特征 'b':

closest <- list()
for(i in seq_len(nrow(a))){
    closest[[i]] <- b[which.min(
    st_distance(b, a[i,])),]
}