fixedPar: Fix a Subset of a Copula Parameter Vector

fixParamR Documentation

Fix a Subset of a Copula Parameter Vector

Description

It is sometimes useful to keep fixed some components of a copula parameter vector whereas the others are “free” and will be estimated, e.g., by fitCopula.

The first two functions set or modify the “fixedness”, whereas isFree(), isFreeP() and nParam() are utilities enquiring about the “fixedness” of the parameters (of a copula).

Usage

fixParam(param, fixed = TRUE)
fixedParam(copula) <- value

isFreeP(param)
## S4 method for signature 'copula'
isFree(copula)
## and specific '*Copula' methods
## S4 method for signature 'copula'
nParam(copula, freeOnly = FALSE)
## and specific '*Copula' methods

Arguments

param

numeric parameter vector

fixed, value

logical vector of the same length as param indicating for each component param[j] if it is (going to be) fixed or not.

copula

a "copula" object.

freeOnly

logical (scalar) indicating if only free parameters should be counted or all.

Value

fixParam(param) returns a numeric vector with attribute "fixed"(a logical, either TRUE or vector of the same length as param) to indicate which components of param are to be held fixed or not.

fixedParam<-, a generic function, returns a "copula" object with a partly fixed parameter (slot), i.e., corresponding to fixParam() above.

See Also

fitCopula for fitting; t-copulas, tCopula(*, df.fixed=TRUE) now uses parameter fixing for "df".

setTheta() for setting or changing the non-fixed parameter values.

Examples

nc1 <- normalCopula(dim = 3, fixParam(c(.6,.3,.2), c(TRUE, FALSE,FALSE)),
                    dispstr = "un")
nc1
nc13 <- nc12 <- nc1
fixedParam(nc12) <- c(TRUE, TRUE, FALSE) ; nc12
fixedParam(nc13) <- c(TRUE, FALSE, TRUE) ; nc13
set.seed(17); x <- rCopula(100, nc1)
summary(f.13 <- fitCopula(nc13, x, method = "ml"))
f.13@copula  # 'rho.2' is estimated; the others kept fixed

## Setting to 'FALSE' (removes the "fixed" parts completely):
nc0 <- nc13; fixedParam(nc0) <- FALSE
nc0
stopifnot(is.null(attributes(nc0@parameters)))

copula documentation built on June 15, 2022, 5:07 p.m.