covarSearchAuto: Stepwise Covariate Model-selection (SCM) method

covarSearchAutoR Documentation

Stepwise Covariate Model-selection (SCM) method

Description

Stepwise Covariate Model-selection (SCM) method

Usage

covarSearchAuto(
  fit,
  varsVec,
  covarsVec,
  pVal = list(fwd = 0.05, bck = 0.01),
  covInformation = NULL,
  catCovariates = NULL,
  searchType = c("scm", "forward", "backward"),
  restart = FALSE
)

Arguments

fit

an nlmixr 'fit' object

varsVec

a list of candidate variables to which the covariates could be added

covarsVec

a list of candidate covariates that need to be tested

pVal

a named list with names 'fwd' and 'bck' for specifying the p-values for the forward and backward searches, respectively

covInformation

a list containing additionl information on the variables-covariates pairs that should be passed on to addCovMultiple function

catCovariates

a list of covariates that should be treated as categorical

searchType

one of 'scm', 'forward' and 'backward' to specify the covariate search method; default is 'scm'

restart

a boolean that controls if the search should be restarted; default is FALSE

Value

A list summarizing the covariate selection steps and output; This list has the "summaryTable" for the overall summary of the covariate selection as well as "resFwd" for the forward selection method and "resBck" for the backward selection method.

Author(s)

Vipul Mann, Matthew Fidler

Examples




one.cmt <- function() {
  ini({
    ## You may label each parameter with a comment
    tka <- 0.45 # Log Ka
    tcl <- log(c(0, 2.7, 100)) # Log Cl
    ## This works with interactive models
    ## You may also label the preceding line with label("label text")
    tv <- 3.45; label("log V")
    ## the label("Label name") works with all models
    eta.ka ~ 0.6
    eta.cl ~ 0.3
    eta.v ~ 0.1
    add.sd <- 0.7
  })
  model({
    ka <- exp(tka + eta.ka)
    cl <- exp(tcl + eta.cl)
    v <- exp(tv + eta.v)
    linCmt() ~ add(add.sd)
  })
}

fit <- nlmixr(one.cmt, theo_sd,"focei")
RxODE::.rxWithWd(tempdir(), {# with temporary directory

covarSearchAuto(fit, varsVec = c("ka", "cl"),
    covarsVec = c("WT", "SEX"), catCovariates = c("SEX"))

})

## Note that this didn't include sex, add it to dataset and restart model

d <- theo_sd
d$SEX <-0
d$SEX[d$ID<=6] <-1

fit <- nlmixr(one.cmt, d, "focei")

# This would restart if for some reason the search crashed:

RxODE::.rxWithWd(tempdir(), {# with temporary directory

covarSearchAuto(fit, varsVec = c("ka", "cl"), covarsVec = c("WT", "SEX"),
                catCovariates = c("SEX"), restart = TRUE)

covarSearchAuto(fit, varsVec = c("ka", "cl"), covarsVec = c("WT", "SEX"),
                catCovariates = c("SEX"), restart = TRUE,
                searchType = "forward")
})




nlmixrdevelopment/nlmixr documentation built on Aug. 22, 2023, 2:16 p.m.