##################################################
### Example - Pollution levels in Milan, Italy ###
##################################################
if (FALSE) {
# Dependence structure only
data(MilanPollution)
data <- Milan.winter[, c("NO2", "SO2")]
data <- as.matrix(data[complete.cases(data), ])
# Threshold
u <- apply(data, 2, function(x) quantile(x, prob = 0.9, type = 3))
# Hyperparameters
hyperparam <- list(mu.nbinom = 6, var.nbinom = 8, a.unif = 0, b.unif = 0.2)
# Standardise data to univariate Frechet margins
f1 <- fGEV(data = data[, 1], method = "Bayesian", sig0 = 0.1, nsim = 5e4)
diagnostics(f1)
burn1 <- 1:30000
gev.pars1 <- apply(f1$param_post[-burn1, ], 2, mean)
sdata1 <- trans2UFrechet(data = data[, 1], pars = gev.pars1, type = "GEV")
f2 <- fGEV(data = data[, 2], method = "Bayesian", sig0 = 0.1, nsim = 5e4)
diagnostics(f2)
burn2 <- 1:30000
gev.pars2 <- apply(f2$param_post[-burn2, ], 2, mean)
sdata2 <- trans2UFrechet(data = data[, 2], pars = gev.pars2, type = "GEV")
sdata <- cbind(sdata1, sdata2)
# Bayesian estimation using Bernstein polynomials
pollut1 <- fExtDep.np(method = "Bayesian", data = sdata,
u = TRUE, mar.fit = FALSE, k0 = 5,
hyperparam = hyperparam, nsim = 5e4)
diagnostics(pollut1)
}
Run the code above in your browser using DataLab