HW4
HW4
library(classInt)
library(fields)
library(maps)
library(sp)
library(gstat)
library(geoR)
library(mvtnorm)
library(MCMCpack)
library(coda)
#############################
## California temperatures ##
#############################
load("CAtemps.RData")
## Plotting
range(CAtemp$avgtemp)
breaks <- seq(40, 75, by = 5)
ploteqc(CAtemp, CAtemp$avgtemp, breaks, pch = 19)
map("county", region = "california", add = TRUE)
title(main = "Average Annual Temperatures, 1961-1990, Degrees F")
range(CAgrid$elevation)
breaks <- seq(-100, 3600, by = 100)
ploteqc(CAgrid, CAgrid$elevation, breaks, pch = 19)
map("county", region = "california", add = TRUE)
title(main = "Elevations at prediction locations, m")
## Prior parameters
linmod <- lm(avgtemp~lon+lat+elevation, data = CAtemp)
summary(linmod)
y <- CAtemp$avgtemp
n <- nrow(CAtemp); m <- nrow(CAgrid)
d <- rdist.earth(coordinates(CAtemp))
X <- cbind(rep(1, n), CAtemp$lon, CAtemp$lat, CAtemp$elevation)
Xpred <- cbind(rep(1, m), CAgrid$lon, CAgrid$lat, CAgrid$elevation)
B <- 1000
## MCMC sampler
for(i in 2:B){
if(i%%100==0) print(i)
## eta_obs | Rest
V <- ??
m <- ??
eta.obs.samps[,i] <- rmvnorm(1, mean = m, sigma = V, method = "svd")
## beta | Rest
V <- ??
m <- ??
beta.samps[,i] <- rmvnorm(1, mean = m, sigma = V, method = "svd")
## s2 | Rest
a <- ??
b <- ??
s2.samps[i] <- rinvgamma(1, a, b)
## t2 | Rest
a <- ??
b <- ??
t2.samps[i] <- rinvgamma(1, a, b)
## rho | Rest
# MH update
## Prediction
m <- ??
V <- ??
eta.pred[,j] <- rmvnorm(1, m, V, method = "svd")
}