Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用lat-long-gstat R的通用克里格法_R_Geospatial_Spatial_Kriging_Gstat - Fatal编程技术网

使用lat-long-gstat R的通用克里格法

使用lat-long-gstat R的通用克里格法,r,geospatial,spatial,kriging,gstat,R,Geospatial,Spatial,Kriging,Gstat,我是R的新手,在使用gstat R执行通用克里格时遇到了一些麻烦 正如Hengl等人(2004年)所说,“通用克里格法应保留在漂移(或趋势)仅作为坐标函数建模的情况下”。所以,我只想使用坐标,而不是泛克里金法中的距离 谁能告诉我怎么做?我是这样进行的: library(sp) library(gstat) data(meuse) coordinates(meuse) <- c("x", "y") data(meuse.grid) coordinates(meuse.grid) <-

我是R的新手,在使用gstat R执行通用克里格时遇到了一些麻烦

正如Hengl等人(2004年)所说,“通用克里格法应保留在漂移(或趋势)仅作为坐标函数建模的情况下”。所以,我只想使用坐标,而不是泛克里金法中的距离

谁能告诉我怎么做?我是这样进行的:

library(sp)
library(gstat)

data(meuse)
coordinates(meuse) <- c("x", "y")
data(meuse.grid)
coordinates(meuse.grid) <- c("x", "y")
meuse.grid <- as(meuse.grid, "SpatialPixelsDataFrame")

plot(variogram(log(zinc) ~ meuse@coords, meuse),pch=19)
v1 <- variogram(log(zinc) ~ meuse@coords, meuse)
p1 <- vgm(psill = 0.42, model = 'Cir', range = 1000, nugget = 0.08)
fit1 <- fit.variogram(v1, p1)

# Trying to use the coordinates with meuse@coords
uk1 <- krige(log(zinc) ~ meuse@coords, meuse, meuse.grid, fit1)

# Trying to get coordinates as data column
xy <- as.data.frame(meuse@coords)
meuse$long <- xy$x
meuse$lat <- xy$y

uk2 <- krige(log(zinc) ~ meuse$long + meuse$lat, meuse, meuse.grid, fit1)
库(sp)
图书馆(gstat)
数据(meuse)

坐标(默兹)我实际上不太清楚T.Hengl在2004年的论文中的意思。这篇论文是关于英国、RK和KED之间的区别,它们实际上都是等价的。首先拟合趋势、多重线性模型,然后在这些残差上拟合变异函数模型

如果您想在R中的英国模型中将坐标用作漂移,您可以简单地执行以下操作:

library(sp)
library(gstat)

data(meuse)
coordinates(meuse) <- c("x", "y")
data(meuse.grid)
coordinates(meuse.grid) <- c("x", "y")
meuse.grid <- as(meuse.grid, "SpatialPixelsDataFrame")

meuse$X <- as.numeric(meuse@coords[,1])
meuse$Y <- as.numeric(meuse@coords[,2])

meuse.grid$X <-as.numeric(meuse.grid@coords[,1])
meuse.grid$Y <-as.numeric(meuse.grid@coords[,2])

plot(variogram(log(zinc) ~ X+Y, meuse),pch=19)
v1 <- variogram(log(zinc) ~  X+Y, meuse)
p1 <- vgm(psill = 0.42, model = 'Cir', range = 1000, nugget = 0.08)
fit1 <- fit.variogram(v1, p1)



# Trying to use the coordinates with meuse@coords
uk1 <- krige(log(zinc) ~ X+Y, meuse, meuse.grid, fit1)

# Trying to get coordinates as data column
uk2 <- krige(log(zinc) ~  X+Y , meuse, meuse.grid, fit1)
库(sp)
图书馆(gstat)
数据(meuse)
坐标(默兹)