CovariateModel object

Define relationship between parameters and covariates

Description

CovariateModel defines the relationship between estimated parameters and covariates.

Tip

Use a CovariateModel object as an input argument to sbiofitmixed to fit a model with covariate dependencies. Before using the CovariateModel object, set the FixedEffectValues property to specify the initial estimates for the fixed effects.

Construction

CovModelObj = CovariateModel creates an empty CovariateModel object.

CovModelObj = CovariateModel(Expression) creates a CovariateModel object with its Expression property set to Expression, a character vector, string, string vector, or cell array of character vectors, where each character vector or string represents the relationship between a parameter being estimated and one or more covariates. Expression must denote fixed effects with the prefix theta, and random effects with the prefix eta. Each character vector or string in Expression must be in the form:

parameterName = relationship

This example of an expression defines the relationship between a parameter (volume) and a covariate (weight), with fixed effects, but no random effects:

Expression = {'volume = theta1 + theta2*weight'};

If a model component name or covariate name is not a valid MATLAB® variable name, surround it by square brackets when referring to it in the expression. For example, if the name of a species is DNA polymerase+, write [DNA polymerase+]. If a covariate name itself contains square brackets, you cannot use it in the expression.

This table illustrates expression formats for some common parameter-covariate relationships.

Parameter-Covariate RelationshipExpression Format
Linear with random effectCl = theta1 + theta2*WEIGHT + eta1
Exponential without random effectCl = exp(theta_Cl + theta_Cl_WT*WEIGHT)
Exponential, WEIGHT centered by mean, has random effectCl = exp(theta1 + theta2*(WEIGHT - mean(WEIGHT)) + eta1)
Exponential, log(WEIGHT), which is equivalent to power modelCl = exp(theta1 + theta2*log(WEIGHT) + eta1)
Exponential, dependent on WEIGHT and AGE, has random effectCl = exp(theta1 + theta2*WEIGHT + theta3*AGE + eta1)
Inverse of probit, dependent on WEIGHT and AGE, has random effectCl = probitinv(theta1 + theta2*WEIGHT + theta3*AGE + eta1)
Inverse of logit, dependent on WEIGHT and AGE, has random effectCl = logitinv(theta1 + theta2*WEIGHT + theta3*AGE + eta1)

Tip

To simultaneously fit data from multiple dose levels, use a CovariateModel object as an input argument to sbiofitmixed, and omit the random effect (eta) from the Expression property in the CovariateModel object.

Method Summary

constructDefaultFixedEffectValues (covmodel)Create initial estimate vector needed for fit
verify (covmodel)Check covariate model for errors

Properties

CovariateLabels (CovariateModel)Labels for covariates in CovariateModel object
Expression (CovariateModel)Define relationship between parameters and covariates
FixedEffectDescription (CovariateModel)Descriptions of fixed effects in CovariateModel object
FixedEffectNames (CovariateModel)Names of fixed effects in CovariateModel object
FixedEffectValues (CovariateModel)Values for initial estimates of fixed effects in CovariateModel object
ParameterNames (CovariateModel)Names of parameters in CovariateModel object
RandomEffectNames (CovariateModel)Names of random effects in CovariateModel object

Examples

Create a CovariateModel object and set the Expression property to define the relationship between two parameters (clearance and volume) and two covariates (weight and age) using fixed effects (thetas) and random effects (etas):

covModelObj = CovariateModel
covModelObj.Expression = {'CL = theta1 + theta2*WT + eta1', 'V = theta3 + theta4*AGE + eta2'};
Introduced in R2011b