关闭

Nearest Neighbour in R

116人阅读 评论(0) 收藏 举报
分类:

Package in use: "spatstat"

Data: 

> title <- c("Name", "X", "Y", "Surface", "Date", "Temprature")
> GWT <- read.csv2("E:\\Slides\\Geostatistics & Geomarketing(Nein)\\data\\Groundwater_Temperature.csv", header = TRUE, sep = ",", dec = ".", col.names = title)
> GWT_sub <- subset(GWT, subset = (GWT$Surface >0))
> head(GWT_sub)
     Name       X       Y Surface    Date Temprature
1 ABP9922 4459725 5340978  497.50 7/25/09        9.9
2 ABP9926 4460005 5341246  498.90 7/25/09       12.0
3   BP 25 4464282 5331784  534.17 7/26/09        9.9
4   BP 26 4464222 5330721  542.08 7/27/09       10.5
5   BP 32 4460921 5337893  509.09 7/25/09       11.6
6   BP 49 4463843 5339414  501.50 7/24/09       11.3


Creat a point pattern dataset with function ppp
> Xgwt_subset <- ppp(GWT_sub$X, GWT_sub$Y, window = owin(c(min(GWT_sub$X), max(GWT_sub$X)), c(min(GWT_sub$Y), max(GWT_sub$Y))), marks = GWT_sub$Temperature)
> plot(Xgwt_subset)
> plot(Xgwt_subset, main = "GWT")


Calculating neighbors of each points. M means that, the 85th point is neighbor of the 1st point, 170th point is the nearest neighbor of 2ed point.  b is another dataset for every points' neighbors.

> m <- nnwhich(GWT_sub$X, GWT_sub$Y)
> m
  [1]   2   1 407 411 257 143 319  14  13  80  12  11   9   8  44  53 107 104 329   6
 [21] 102 268 198 194 284 233 233 170 142  19 299 278  47 159  25 291 131  39  40  39
... ...
> b <- GWT_sub[m, ]

Displaying.

> arrows(GWT_sub$X, GWT_sub$Y, b$X, b$Y, col = "red", length = 0.06)





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4787次
    • 积分:284
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:6篇
    • 译文:0篇
    • 评论:0条
    文章分类