Guest User

Untitled

a guest
Apr 24th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. library(gstat)
  2. library(sp)
  3. library(raster)
  4. data(meuse)
  5. data(meuse.grid)
  6. coordinates(meuse) <- ~x + y
  7. coordinates(meuse.grid) <- ~x + y
  8.  
  9. v <- fit.variogram(variogram(log(elev) ~ 1, meuse), vgm(.1, "Sph", 1000, .6))
  10. elev <- krige(elev ~ 1, meuse, meuse.grid, v, nmax = 30)
  11. gridded(elev) <- TRUE
  12. names(elev@data) <- c("elev","var")
  13. elev2 <- elev
  14. elev2@data$elev <- elev2@data$elev + runif(nrow(elev), -3, 3)
  15.  
  16. plot(stack(raster(elev,1),raster(elev2,1)))
  17.  
  18. rmse <- function(x, y) sqrt(mean((x - y)^2, na.rm=TRUE))
  19.  
  20. rmse(elev$elev, elev2$elev ) # global RMSE
  21.  
  22. d <- 200
  23. nb <- spdep::dnearneigh(sp::coordinates(elev), 0, d)
  24. xy.rmse <- rep(NA,nrow(elev))
  25. for (i in 1:length(nb)) {
  26. x.var <- elev@data[nb[[i]], ][1][, 1]
  27. y.var <- elev2@data[nb[[i]], ][1][, 1]
  28. xy.rmse[i] <- rmse(x.var,y.var)
  29. }
  30.  
  31. elev$rmse <- xy.rmse
  32. plot(raster(elev,3))
Add Comment
Please, Sign In to add comment