当我想让距离参数随byid中的ID改变时,获取InsideDistance(rgeos)

时间:2018-10-15 04:58:34

标签: r spatial

我可能错过了一些非常简单的东西,但是我觉得今天我遇到了gWithinDistance的怪异行为。

我有两个SpatialPointsDataFrames(/bin/sh: pg_dump: command not found ▸ pg_dump errored with 127 pg_restore: [custom archiver] could not read from input file: end of file cnty_ctr)。这些对象可以在这里找到:https://www.dropbox.com/preview/UCLA/within_multiple_D.RData?role=personal

我正在尝试确定ghcn.s中的哪些要素在ghcn.s中的每个点的距离内。问题在于,我希望内部距离特定于cnty_ctr中的每个点(具体而言cnty_ctr)。我已经尝试过了:

cnty_ctr$RADIUS2

但是我得到的真值比我要多。

stn.r2 <- gWithinDistance(cnty_ctr, ghcn.s, dist = cnty_ctr$RADIUS2, byid = TRUE)

这似乎是因为gWithinDistance不接受向量。并且正在使用向量的某个值作为搜索距离(误报的距离大于$ RADIUS2值)。有什么我可以代替的想法吗?

1 个答案:

答案 0 :(得分:0)

这是我想出的解决方案:

stn.r2 <-  lapply(seq_len(length(cnty_ctr@data$RADIUS2)), 
              function(i) gWithinDistance(cnty_ctr, ghcn.s, dist = cnty_ctr$RADIUS2[i], byid = T))
names(stn.r2) <- cnty_ctr@data$COUNTYFP

它不像我希望的那么容易阅读/直观,但是可以完成工作。