Set or change the parameter theta
) of
a copula. The name ‘theta’ has been from its use in (nested)
Archimedean copulas, where x
is of class
"'>acopula"
or
"'>outer_nacopula"
. This is used for constructing
copula models with specified parameter, as, for example, in
onacopula()
, or also gofCopula
.
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE, …)# S4 method for acopula,ANY
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE, …)
# S4 method for copula,ANY
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE, …)
# S4 method for xcopula,ANY
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE, …)
# S4 method for outer_nacopula,numeric
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE, …)
# S4 method for khoudrajiCopula,ANY
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE, …)
# S4 method for mixCopula,ANY
setTheta(x, value, na.ok = TRUE, noCheck = FALSE, freeOnly = TRUE,
treat.negative = c("set.0", "warn.set0", "stop"), …)
further arguments for methods.
logical indicating if NA
values are ok for
theta
.
logical indicating if parameter constraint checks should be skipped.
logical indicating that only non-fixed aka
“free” parameters are to be set. If true as by default,
setTheta()
modifies only the free parameters of the copula;
see also fixParam
.
an R object of the same class as x
, with the main parameter (vector)
(often called theta
) set to value
.
the “inverse” function, a “getter” method, is
getTheta()
.
# NOT RUN {
myC <- setTheta(copClayton, 0.5)
myC
## Frank copula with Kendall's tau = 0.8 :
(myF.8 <- setTheta(copFrank, iTau(copFrank, tau = 0.8)))
# negative theta is ok for dim = 2 :
myF <- setTheta(copFrank, -2.5, noCheck=TRUE)
myF@tau(myF@theta) # -0.262
myT <- setTheta(tCopula(df.fixed=TRUE), 0.7)
stopifnot(all.equal(myT, tCopula(0.7, df.fixed=TRUE), tolerance=0))
(myT2 <- setTheta(tCopula(dim=3, df.fixed=TRUE), 0.7))
## Setting 'rho' and 'df' --- for default df.fixed=FALSE :
(myT3 <- setTheta(tCopula(dim=3), c(0.7, 4)))
# }
Run the code above in your browser using DataLab