lssVarReg.multi: Semi parametric location, shape and scale regression

View source: R/lssVarReg_multi.R

lssVarReg.multiR Documentation

Semi parametric location, shape and scale regression

Description

lssVarReg.multi performs a semiparametric location (\xi or xi), shape (\nu or nu) and scale (\omega or omega) regression model. This is designed for multiple covariates that are fit in the location, scale and shape models.

Usage

lssVarReg.multi(
  y,
  x,
  locationmodel = c("constant", "linear", "semi"),
  location.vars = c(1),
  scale2model = c("constant", "linear", "semi"),
  scale2.vars = c(1),
  shapemodel = c("constant", "linear", "semi"),
  shape.vars = c(1),
  knots.l = NULL,
  knots.sc = NULL,
  knots.sh = NULL,
  degree = 2,
  location.init = NULL,
  scale2.init = NULL,
  shape.init = NULL,
  int.maxit = 1000,
  print.it = FALSE,
  control = list(...),
  ...
)

Arguments

y

Vector containing outcome data. Must be no missing data.

x

Matrix containing the covariate data, same length as y. Must be no missing data.

locationmodel

Vector to specify the location model to be fit for each covariate. Options: "constant" = constant model (intercept only), "linear" = linear term with x covariate, "semi" = semiparametric spline (specify with knots.l).

location.vars

Vector to specify the column(s) in x referring to covariates to be fit in the location model, eg c(1,2) indicates columns 1 and 2 in x. Must be the same length as locationmodel which specifies if they are fit as linear/semi. If semi, use knots.l to specify knots.

scale2model

Vector to specify the scale^2 model to be fit for each covariate. Options: "constant" = constant term only, "linear" = linear term with x covariate, "semi" = semiparametric spline (specify with knots.sc)

scale2.vars

Vector to specify the column(s) in x referring to covariates to be fit in the scale^2 model, eg c(1,2) indicates columns 1 and 2 in x. Must be the same length as scale2model which specifies if they are fit as linear/semi. If semi, use knots.sc to specify knots.

shapemodel

Vector to specify the shape model to be fit for each covariate. Options: "constant" = constant shape model, "linear" = linear term with x covariate, "semi" = semiparametric spline (specify with knots.sh).

shape.vars

Vector to specify the column(s) in x referring to covariates to be fit in the shape model, eg c(1,2) indicates columns 1 and 2 in x. Must be the same length as shapemodel which specifies if they are fit as linear/semi. If semi, use knots.sh to specify knots.

knots.l

Vector indicating the number of internal knots to be fit in the location model for each covariate. Default is '2'. (Note that the knots are placed equidistantly over x.)

knots.sc

Vector indicating the number of internal knots to be fit in the scale^2 model for each covariate. Default is '2'. (Note that the knots are placed equidistantly over x.)

knots.sh

Vector indicating the number of internal knots to be fit in the shape model for each covariate. Default is '2'. (Note that the knots are placed equidistantly over x.)

degree

Integer to indicate the degree of the splines fit in the location, scale and shape. Default is '2'.

location.init

Vector of initial parameter estimates for the location model. Defaults to vector of 1's of appropriate length.

scale2.init

Vector of initial parameter estimates for the scale^2 model. Defaults to vector of 1's of appropriate length.

shape.init

Vector of initial parameter estimates for the shape model. Defaults to vector of 1's of appropriate length.

int.maxit

Integer of maximum iterations for the internal location and scale EM algorithm. Default is 1000 iterations.

print.it

Logical for printing progress of estimates through each iteration. Default is FALSE.

control

List of control parameters for the algorithm. See VarReg.control.

...

arguments to be used to form the default control argument if it is not supplied directly

Value

lssVarReg returns an object of class "lssVarReg", which inherits most from class "VarReg". This object of class lssVarReg is a list of the following components:

  • modeltype: Text indicating the model that was fit, always "LSS model" for this model.

  • locationmodel, scale2model, shapemodel, knots.l, knots.sc, knots.sh, degree,mono.scale : Returning the input variables as described above

  • converged: Logical argument indicating if convergence occurred.

  • iterations: Total iterations performed of the main algorithm (not including the internal EM algorithm).

  • reldiff: the positive convergence tolerance that occured at the final iteration.

  • loglik: Numeric variable of the maximised log-likelihood.

  • aic.c: Akaike information criterion corrected for small samples

  • aic: Akaike information criterion

  • bic: Bayesian information criterion

  • hqc: Hannan-Quinn information criterion

  • location: Vector of the maximum likelihood estimates of the location parameters.

  • scale2: Vector of the maximum likelihood estimates of the scale (squared) parameters.

  • shape: Vector of the maximum likelihood estimates of the shape parameters.

  • data: Dataframe containing the variables included in the model.

See Also

VarReg.control plotlssVarReg

Examples

## not run
## library(palmerpenguins)
## cc<-na.omit(penguins)
## y<-cc$body_mass_g
## x<-as.data.frame(cbind(cc$bill_length_mm, cc$flipper_length_mm,cc$bill_depth_mm))
## colnames(x) <-c("bill length mm", "flipper length mm","bill depth mm")
## model1<-lssVarReg.multi(y, x,
##                         locationmodel="linear", location.vars = 2,
##                         scale2model="constant",
##                         shapemodel=c("linear", "semi"), shape.vars = c(2,3),
##                         knots.sh = 1, int.maxit=10 )
## model1[-21] ## print model

VarReg documentation built on May 31, 2023, 8:44 p.m.