fit.simml
is the workhorse function for Single-index models with multiple-links (SIMML).
The function estimates a linear combination (a single-index) of covariates X, and models the treatment-specific outcome y, via treatment-specific nonparametrically-defined link functions.
fit.simml(y, A, X, Xm = NULL, family = "gaussian", R = NULL,
bs = "ps", k = 8, sp = NULL, linear.link = FALSE,
method = "GCV.Cp", gamma = 1, max.iter = 20, eps.iter = 0.01,
trace.iter = TRUE, ind.to.be.positive = NULL, lambda = 0,
pen.order = 0, scale.X = TRUE, center.X = TRUE,
ortho.constr = TRUE, beta.ini = NULL, si.main.effect = FALSE,
random.effect = FALSE, z = NULL)
a n-by-1 vector of treatment outcomes; y is a member of the exponential family; any distribution supported by mgcv::gam
; y can also be an ordinal categorial response with R
categories taking a value from 1 to R
.
a n-by-1 vector of treatment variable; each element is assumed to take a value on a continuum.
a n-by-p matrix of baseline covarates.
a n-by-q design matrix associated with an X main effect model; the defult is NULL
and it is taken as a vector of zeros
specifies the distribution of y; e.g., "gaussian", "binomial", "poisson"; can be any family supported by mgcv::gam
; can also be "ordinal", for an ordinal categorical response y.
the number of response categories for the case of family = "ordinal".
basis type for the treatment (A) and single-index domains, respectively; the defult is "ps" (p-splines); any basis supported by mgcv::gam
can be used, e.g., "cr" (cubic regression splines); see mgcv::s
for detail.
basis dimension for the treatment (A) and single-index domains, respectively.
smoothing paramter for the treatment-specific link functions; if NULL
, then estimated from the data.
if TRUE
, the link function is restricted to be linear.
the smoothing parameter estimation method; "GCV.Cp" to use GCV for unknown scale parameter and Mallows' Cp/UBRE/AIC for known scale; any method supported by mgcv::gam
can be used.
increase this beyond 1 to produce smoother models. gamma
multiplies the effective degrees of freedom in the GCV or UBRE/AIC (see mgcv::gam
for detail); the default is 1.
an integer specifying the maximum number of iterations for beta.coef
update.
a value specifying the convergence criterion of algorithm.
if TRUE
, trace the estimation process and print the differences in beta.coef
.
for identifiability of the solution beta.coef
, the user can restrict the jth (e.g., j=1) component of beta.coef
to be positive; by default, we match the "overall" sign of beta.coef
with that of the linear estimate (i.e., the initial estimate), by restricting the inner product between the two to be positive.
a regularization parameter associated with the penalized LS for beta.coef
update.
0 indicates the ridge penalty; 1 indicates the 1st difference penalty; 2 indicates the 2nd difference penalty, used in a penalized least squares (LS) estimation of beta.coef
.
if TRUE
, scale X to have unit variance.
if TRUE
, center X to have zero mean.
separates the interaction effects from the main effect (without this, the interaction effect can be confounded by the main effect; the default is TRUE
.
an initial value for beta.coef
; a p-by-1 vector; the defult is NULL
, in which case a linear model estimate is used.
if TRUE
, once the convergence in the estimates of beta.coef
is reached, include the main effect associated with the fitted single-index (beta.coef'X) to the final fit; the default is FALSE
.
if TRUE
, as part of the main effects, the user can incorporate z-specific random intercepts.
a factor that specifies the random intercepts when random.effect = TRUE
.
a list of information of the fitted SIMML including
the estimated single-index coefficients.
a mgcv:gam
object containing information about the estimated treatment-specific link functions.
the initial value used in the estimation of beta.coef
solution path of beta.coef
over the iterations
records the change in beta.coef
over the solution path, beta.path
sd of pretreatment covariates X
mean of pretreatment covariates X
number of different treatment options
number of pretreatment covariates X
number of subjects
(1-boot.alpha/2) percentile bootstrap CIs (LB, UB) associated with beta.coef
SIMML captures the effect of covariates via a single-index and their interaction with the treatment via nonparametric link functions.
Interaction effects are determined by distinct shapes of the link functions.
The estimated single-index is useful for comparing differential treatment efficacy.
The resulting simml
object can be used to estimate an optimal treatment decision rule
for a new patient with pretreatment clinical information.
pred.simml
, simml