插值和空间分析(一)_探索性数据分析(R语言)

> library(lattice) > library(sp) > data(meuse) > coordinates(meuse) <- c("x","y") > spplot(meuse, "zinc", do.log=T)
> bubble(meuse, "zinc", do.log=T, key.space="bottom")

插值和空间分析(一)_探索性数据分析(R语言)_第1张图片 插值和空间分析(一)_探索性数据分析(R语言)_第2张图片

> xyplot(log(meuse$zinc)~sqrt(meuse$dist), meuse, main="", xlab="dist", ylab="Zn")
插值和空间分析(一)_探索性数据分析(R语言)_第3张图片
> meuse$fitted.s <- predict(zn.lm, meuse) - mean(predict(zn.lm,meuse)) > meuse$residuals <- residuals(zn.lm) > spplot(meuse, c("fitted.s", "residuals")) > spplot(meuse, c("fitted.s", "residuals"))
插值和空间分析(一)_探索性数据分析(R语言)_第4张图片
> library(gstat) > idw.out <- idw(zinc~1, meuse, meuse.grid, idp=1) [inverse distance weighted interpolation] > spplot(idw.out)
> spplot(idw.out, c("var1.pred"))

插值和空间分析(一)_探索性数据分析(R语言)_第5张图片   插值和空间分析(一)_探索性数据分析(R语言)_第6张图片

3、使用线性回归:
> zn.lm <- lm(log(zinc) ~ sqrt(dist), meuse) > meuse.grid$pred <- predict(zn.lm, meuse.grid) > meuse.grid$se.fit <- predict(zn.lm, meuse.grid, se.fit=TRUE)$se.fit
> spplot(meuse.lm)

方式一、采用krige函数
> meuse.lm <- krige(log(zinc) ~ sqrt(dist), meuse, meuse.grid) [ordinary or weighted least squares prediction] > spplot(meuse.lm)
 插值和空间分析(一)_探索性数据分析(R语言)_第7张图片 
> meuse.lm <- krige(log(zinc)~1, meuse, meuse.grid, degree=2)
> spplot(meuse.lm)
插值和空间分析(一)_探索性数据分析(R语言)_第8张图片
方式二:采用lm函数

> lm(log(zinc)~I(x^2)+I(y^2)+I(x*y)+x+y, meuse)
> lm(log(zinc)~poly(x,y,degree=2), meuse)



 

你可能感兴趣的:(数据分析)