[R-sig-Geo] kriging and cokriging with multiple covariate

Andrew Finley finleya at msu.edu
Tue Feb 8 13:09:07 CET 2011


Hi Toni,
Check out the spMvLM function in the spBayes package (or spMvGLM  
depending on your outcome variable), there are also some illustrative  
slides and examples toward the bottom of this page  
http://blue.for.msu.edu/JBC_10/SC .
Let me know if you have any questions-
Andy

Quoting TM <amonleong at wanadoo.es>:

> Hi all,
>
> I'm trying to model some ecological data of an area to predict  
> spatially some ecological response variable  in terms of x, y, and  
> some covariates have been measured. The problem is that some of the  
> covariates are discrete (ordinal) and do not really know how to make  
> a cokriging with multiple covariates.
>
> Bayesian cokriging or perhaps a transformation based on a mixed  
> distance as the Gower?
>
> Any idea? I add below a R code with some of the data, the covariates  
> and the response variable.
>
> How  can I do a Cross-validation with used data  to determine  
> whether the estimated model fits well?
>
> Thank you very much in advance.
>
> Toni
> Department of Statistics
> University of Barcelona
>
> ###########################################################################################################
> ############################         kriging and cokriging  with  
> multiple covariate      ##########################################
> ###########################################################################################################
> ###########################################################################################################
> ###########################################################################################################
>
> data_example<-structure(list(x = c(430234, 429626, 413104, 456047,  
> 475226, 422256, 446443, 456281, 433773, 404269),
> y = c(4588887, 4579902, 4574398, 4621071, 4610062, 4587858, 4609701,  
> 4617064, 4600892, 4575527, 4587229, 4620543),
> var1 =c(1287, 131, 91, 21, 5, 311, 22, 57, 1252, 113),
> var2 =c(39.26, 68.13, 36.42, 16.06, 46.75, 34.19, 56.87, 31.04,  
> 35.19, 15.40),
> var3 =c(3, 9, 1, 1, 2, 1, 10, 2, 11, 1),
> var4 =c(1, 3, 1, 1, 1, 1, 3, 1, 1, 1),
> var5 =c(0.41, 0.89, 0.77, 0.29, 0.93, 0.31, 0.94, 0.84, 0.80, 0.60),
> var6 =c(4.02, 8.63, 6.08, 2.60, 8.64, 3.81, 7.65, 5.81, 4.31, 2.13),
> var7 =c(1.07, 1.12, 1.08, 1.10, 1.07, 1.15, 1.08, 1.07, 1.08, 1.05)),
> .Names = c("x", "y", "Cov1", "Cov2",  "Cov3", "Cov4", "Cov5",  
> "Response", "Cov6" ), class = "data.frame", row.names = c("1", "2",  
> "3", "4", "5", "6", "7", "8", "9", "10"))
>
>
> library(gstat)
> data(data_example)
> attach(data_example)
>
> # Ordinary Kriging in gstat
>
> # compute experimental variogram
> v <- variogram(response~1, ~ x+y, data_example)
> # estimated model
> m <- vgm(1.4, "Sph", 12000, 0.5)
> # fitted model
> m.f <- fit.variogram(v, m)
>
> new.locs <- data.frame(
> x = c(430334, 429726, 413204, 456147, 475326, 422356, 446543,  
> 456381, 433873, 404369, 422732),
>  y = c(4588987, 4571002, 4574498, 4621171, 4610162, 4587958,  
> 4609801, 4617164, 4600992, 4575627, 4587329))
>
> kr <- krige(response~ 1, loc=~ x+y, data=data_example,  
> newdata=new.locs, model=m.f)
>
>
> library (lattice)
> # visualize interpolation; note aspect option to get correct geometry
> levelplot(var1.pred ~ x+y, kr)
> # visualize prediction error
> levelplot(var1.var ~ x+y, data=kr,col.regions=terrain.colors(40))
>
>
> 	[[alternative HTML version deleted]]
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>



More information about the R-sig-Geo mailing list