Fits the parameters of a multivariate Huesler-Reiss Pareto distribution using (censored) maximum likelihood estimation.
fmpareto_HR_MLE(
data,
p = NULL,
cens = FALSE,
init = NULL,
fixParams = integer(0),
useTheta = TRUE,
maxit = 100,
graph = NULL,
optMethod = "BFGS",
nAttemptsFixInit = 3
)List consisting of:
convergenceLogical. Indicates whether the optimization converged or not.
GammaNumeric d x d matrix. Fitted variogram matrix.
ThetaNumeric d x d matrix. Fitted precision matrix.
parNumeric vector. Optimal parameters, including fixed parameters.
par_optNumeric. Optimal parameters, excluding fixed parameters.
nllikNumeric. Optimal value of the negative log-likelihood function.
hessianNumeric matrix. Estimated Hessian matrix of the estimated parameters.
Numeric \(n \times d\) matrix, where n is the
number of observations and d is the number of dimensions.
Numeric scalar between 0 and 1 or NULL. If NULL (default),
it is assumed that the data is already on a multivariate Pareto scale. Else,
p is used as the probability in data2mpareto() to standardize the data.
Logical scalar. If true, then censored likelihood contributions are used for
components below the threshold. This is computationally expensive and by default cens = FALSE.
Numeric vector or numeric matrix. Initial parameter values in the optimization.
If NULL, the empirical variogram is used instead. Otherwise should be a numeric
vector with one entry per edge in graph, or a complete variogram/precision matrix.
Numeric or logical vector. Indices of the parameter vectors that are kept
fixed (identical to init) during the optimization. Default is integer(0).
Logical. Whether to perform the MLE optimization in terms of Theta or Gamma.
Positive integer. The maximum number of iterations in the optimization.
Graph object from igraph package or NULL (implying the complete graph).
String. A valid optimization method used by the function
stats::optim. By default, method = "BFGS".
Numeric. If useTheta=TRUE and the initial parameter init is not valid,
attempt to fix it first by making sure all off-diagonal entries are negative and then adding some random noise
at most this many times.
Only the parameters corresponding to edges in graph are optimized, the remaining
entries are implied by the graphical structure. If graph is NULL, the complete graph is used.
The optimization is done either in terms of the variogram (Gamma) or precision matrix (Theta),
depending on the value of useTheta. If graph is non-decomposable,
useTheta=TRUE is significantly faster, otherwise they are similar in performance.
Other parameter estimation methods:
data2mpareto(),
emp_chi_multdim(),
emp_chi(),
emp_vario(),
emtp2(),
fmpareto_graph_HR(),
loglik_HR()