SPATSTAT在特定距离内重复的点

时间:2018-06-28 09:51:07

标签: r duplicates spatstat

我在R Studio的定居点中有一个数据集,这些数据是坐标,并且我正在尝试删除彼此之间一定距离(即20米)内的重复点。 任何想法? 谢谢

  

winch2 <-data.frame(Lon = c(-1.560367,-1.078330),Lat = c(   50.576342,51.243823))坐标(winch2)<-〜Lon + Lat proj4string(winch2)<-latlong winch2 <-spTransform(winch2,bng)   (地板(座标(winch2)/ 1000)+ 0.5)* 1000 W2 <-   owin(c(431500,464500),c(75500,149500))区域<-allpop_strat [W2]

     从更大的点数子集中      

摘要(区域)

     

标记的平面点图案:371点平均强度   每平方单位1.519247e-07点

     

坐标被赋予小数点后两位,即四舍五入到最接近的值   0.01单位的倍数

     

标记是数字,类型为“ double”。摘要:最小值。第一区中位数
  平均第三区最高    0.0100 0.0100 0.0100 0.4078 1.0000 6.0000

     

窗口:矩形= [431500,464500] x [75500,149500]单位窗口   面积= 2.442e + 09平方单位

     

anyDuplicated(Region)0

     

但我希望在特定的重复中重复任何内容

1 个答案:

答案 0 :(得分:0)


在简单的情况下,当闭合点成对出现时,下面的代码 应该足以删除近邻。删除什么取决于 关于积分的顺序。如果许多点都在距离R之内 (例如20 m)彼此之间可能有许多解决方案 问题,下面的代码可能无法满足您的需求。

library(spatstat)
X <- unmark(amacrine) # Built-in dataset for demonstation
R <- 0.03 # Distance of "close pairs"
close_list = closepairs(X, rmax = R, twice = FALSE)
close_index <- close_list$j
plot(X, main = "Test data with points to be deleted in red")
plot(X[close_index], col = "red", pch = 20, add = TRUE)

Y <- X[-close_index]
plot(Y, main = "Retained points after removal of close points.")