Learn R Programming

s2dv (version 1.1.0)

ACC: Compute the anomaly correlation coefficient between the forecast and corresponding observation

Description

Calculate the anomaly correlation coefficient for the ensemble mean of each model and the corresponding references over a spatial domain. It can return a forecast time series if the data contain forest time dimension, and also the start date mean if the data contain start date dimension. The domain of interest can be specified by providing the list of longitudes/latitudes (lon/lat) of the data together with the corners of the domain: lonlatbox = c(lonmin, lonmax, latmin, latmax).

Usage

ACC(
  exp,
  obs,
  dat_dim = "dataset",
  space_dim = c("lat", "lon"),
  avg_dim = "sdate",
  memb_dim = "member",
  lat = NULL,
  lon = NULL,
  lonlatbox = NULL,
  conf = TRUE,
  conftype = "parametric",
  conf.lev = 0.95,
  pval = TRUE,
  ncores = NULL
)

Arguments

exp

A numeric array of experimental anomalies with named dimensions. It must have at least 'dat_dim' and 'space_dim'.

obs

A numeric array of observational anomalies with named dimensions. It must have the same dimensions as 'exp' except the length of 'dat_dim' and 'memb_dim'.

dat_dim

A character string indicating the name of dataset (nobs/nexp) dimension. The default value is 'dataset'.

space_dim

A character string vector of 2 indicating the name of the latitude and longitude dimensions (in order) along which ACC is computed. The default value is c('lat', 'lon').

avg_dim

A character string indicating the name of the dimension to be averaged. It must be one of 'time_dim'. The mean ACC is calculated along averaged. If no need to calculate mean ACC, set as NULL. The default value is 'sdate'.

memb_dim

A character string indicating the name of the member dimension. If the data are not ensemble ones, set as NULL. The default value is 'member'.

lat

A vector of the latitudes of the exp/obs grids. Only required when the domain of interested is specified. The default value is NULL.

lon

A vector of the longitudes of the exp/obs grids. Only required when the domain of interested is specified. The default value is NULL.

lonlatbox

A numeric vector of 4 indicating the corners of the domain of interested: c(lonmin, lonmax, latmin, latmax). Only required when the domain of interested is specified. The default value is NULL.

conf

A logical value indicating whether to retrieve the confidence intervals or not. The default value is TRUE.

conftype

A charater string of "parametric" or "bootstrap". "parametric" provides a confidence interval for the ACC computed by a Fisher transformation and a significance level for the ACC from a one-sided student-T distribution. "bootstrap" provides a confidence interval for the ACC and MACC computed from bootstrapping on the members with 100 drawings with replacement. To guarantee the statistical robustness of the result, make sure that your experiment and observation always have the same number of members. "bootstrap" requires 'memb_dim' has value. The default value is 'parametric'.

conf.lev

A numeric indicating the confidence level for the regression computation. The default value is 0.95.

pval

A logical value indicating whether to compute the p-value or not. The default value is TRUE.

ncores

An integer indicating the number of cores to use for parallel computation. The default value is NULL.

Value

A list containing the numeric arrays:

acc

The ACC with the dimensions c(nexp, nobs, the rest of the dimension except space_dim and memb_dim). nexp is the number of experiment (i.e., dat_dim in exp), and nobs is the number of observation (i.e., dat_dim in obs).

conf.lower (if conftype = "parametric") or acc_conf.lower (if conftype = "bootstrap")

The lower confidence interval of ACC with the same dimensions as ACC. Only present if conf = TRUE.

conf.upper (if conftype = "parametric") or acc_conf.upper (if conftype = "bootstrap")

The upper confidence interval of ACC with the same dimensions as ACC. Only present if conf = TRUE.

p.val

The p-value with the same dimensions as ACC. Only present if pval = TRUE and codeconftype = "parametric".

macc

The mean anomaly correlation coefficient with dimensions c(nexp, nobs, the rest of the dimension except space_dim, memb_dim, and avg_dim). Only present if 'avg_dim' is not NULL.

macc_conf.lower

The lower confidence interval of MACC with the same dimensions as MACC. Only present if conftype = "bootstrap".

macc_conf.upper

The upper confidence interval of MACC with the same dimensions as MACC. Only present if conftype = "bootstrap".

References

Joliffe and Stephenson (2012). Forecast Verification: A Practitioner's Guide in Atmospheric Science. Wiley-Blackwell.

Examples

Run this code
# NOT RUN {
 
# }
# NOT RUN {
sampleData$mod <- Season(sampleData$mod, monini = 11, moninf = 12, monsup = 2)
sampleData$obs <- Season(sampleData$obs, monini = 11, moninf = 12, monsup = 2) 
clim <- Clim(sampleData$mod, sampleData$obs)
ano_exp <- Ano(sampleData$mod, clim$clim_exp)
ano_obs <- Ano(sampleData$obs, clim$clim_obs)
acc <- ACC(ano_exp, ano_obs)
acc_bootstrap <- ACC(ano_exp, ano_obs, conftype = 'bootstrap')
# Combine acc results for PlotACC
res <- array(c(acc$conf.lower, acc$acc, acc$conf.upper, acc$p.val), 
            dim = c(dim(acc$acc), 4))
res_bootstrap <- array(c(acc$acc_conf.lower, acc$acc, acc$acc_conf.upper, acc$p.val),
                      dim = c(dim(acc$acc), 4))
 
# }
# NOT RUN {
PlotACC(res, startDates)
PlotACC(res_bootstrap, startDates)
 
# }

Run the code above in your browser using DataLab