Vous êtes sur la page 1sur 3

install.

packages("sp")
library(gstat)
library(sp)
library(rgl)

data(meuse)
View(meuse)

datos<-meuse[,c(1,2,6)] #x,y, zinc


View(datos)
coordinates(datos)=~x+y
View(datos)
class(datos)

#definir malla de prediccion

data(meuse.grid)
gridded(meuse.grid)=~x+y

#Distribucion de los datos

par(pty="s")
hist(datos$zinc,col="gray",lwd=2)
box()

par(pty="s")
hist(log(datos$zinc),col="gray", lwd=2)
box()

###verificar tendencia

plot3d(log(datos$zinc)~coordinates(datos)[,1]+coordinates(datos)[,2],
zlab="datos simulados",
xlab="oeste-este",
ylab="sur-norte")

summary(lm(log(datos$zinc)~coordinates(datos)[,1]+coordinates(datos)[,2]))
#se corrobora que hay na tendencia en los datos al ser todas sgnificativas.

##distribucion espacial de los datos

colores<-colorRampPalette(c("darkblue","yellow"))(4)
corte<-as.numeric(cut(log(datos$zinc),breaks=4))

par(pty="s")
plot(coordinates(datos),
col=colores[corte],
pch=20)

##variograma del atributo

var<-variogram(log(zinc)~1,
data=datos,
cutoff=max(dist(coordinates(datos)))/2)

par(pty="s")
plot(var,
type="b",
pch=20,
main="datos en bruto",
ylab=expression(gamma(h)),
xlab="h")

#variograma residual e(u)

var2<-variogram(log(zinc)~coordinates(datos),
data=datos,
cutoff=max(dist(coordinates(datos)))/2)

par(pty="s")
plot(var,
type="b",
pch=20,
main="variograma residual",
ylab=expression(epsilon(h)),
xlab="h")

#### modelamos

show.vgms()

ajuste<-fit.variogram(var2,vgm(0.45,"Sph",1000,0.06))

par(pty="s")
plot(var2,
ajuste,
pch=16,
col=1,
main="variograma esferico",
ylab=expression(epsilon(h)),
xlab="h")

#efecto pepita=0.0767883
#ef. pepita+sigma^2=0.3819496
#fi=1053.877
# model psill range
#1 Nug 0.0767883 0.000
#2 Sph 0.3819496 1053.877

#parametros estimados

V<-vgm(0.3819496,"Sph",1053.877,0.0767883)

##Krigin universal

prediccion<-krige(log(zinc)~x+y,
datos,
meuse.grid,
model=V)

spplot(prediccion[,1],main="prediccion por kriging universal")


x11()
spplot(prediccion[,2],main="varianza")

##inverso a la distancia
install.packages("spatstat")
library(spatstat)
data(finpines)
plot(finpines)
x11()
plot(idw(finpines))
idw(finpines,at="points")[1:5,]

#es insesgado por que el error medio es 0 y el valor de la variaza es minimo,


#por eso es una buen estimador minimo

##anexo

plot(coordinates(meuse.grid),pch=3)

Vous aimerez peut-être aussi