*! version 1.0.0 12feb2023

Title

isis -- Iterative sure independence screening for prediction and
covariate selection

Syntax

isis
depvar
controls
[if] [in]
[weight]
,
model(model_spec)
[options]

controls are variables that isis will choose to include or exclude
from the model.

* model(model_spec) specify the
model

method(method_spec) specify the
variable selection technique

always(varlist) specify the variables always included in the
model

maxiter(#) specify the maximum number of
iterations

model_spec

linear linear regression

logit logit regression

poisson Poisson regression

method_spec

stepbic BIC-based stepwise

lasso , lasso_spec lasso

lasso_spec

cv cross-validation

plugin plug-in method

adaptive adaptive lasso

bic minimize BIC; the default

* model() is required.

fweights and iweights are allowed. See weight.

For model_spec, only one of linear,
logit, or poisson is allowed.

For method_spec, only one of stepbic or
lasso is allowed.

For lasso_spec, only one of cv, plugin,
adaptive, or bic is allowed.

Description

isis implements the covariate selector that combines iterative sure
independence screening (ISIS) with Lasso or BIC-based stepwise technique for the
linear, logit, and Poisson models. isis potentially allows for ultra-high
dimensional covariates. The selected variables can be used for prediction or as
an intermediate step in the construction of the Neyman orthogonal estimator
implemented in posis proposed in D. Drukker and D. Liu (2022a) and
(2022b).

Options

model(model_spec)
specifies the model for the outcome variable depvar. model_spec can be
one of linear, logit, or poisson model. model() is
required.

method(method_spec)
specifies the covariate selection technique to be
used within sure independence screening. method_spec is one of
stepbic or lasso, lasso_spec, where stepbic refers to the
BIC-based forward stepwise methods and lasso refers to the Lasso; see
lasso.

lasso_spec specifies how to chose the tuning parameter in Lasso, and it can
be one of cv, plugin, adaptive, or bic. See
sel_method in lasso.

The default is using Lasso and chosing the tuning parameter by minimizing BIC,
which is equivalent to specifying method(lasso, bic).

always(varlist) specifies the variables that will always be included
in the model. The default is none.

maxiter(#) specifies the maximum number of iterations. The default is
5.

Examples

Setup

. webuse cattaneo2

ISIS linear regression

. isis bweight c.mage##c.mage c.fage##c.fage c.mage#c.fage c.fedu##c.medu
i.(mmarried mhisp fhisp foreign alcohol msmoke fbaby prenatal1)
, model(linear)

As above but use plugin-based LASSO

. isis bweight c.mage##c.mage c.fage##c.fage c.mage#c.fage c.fedu##c.medu
i.(mmarried mhisp fhisp foreign alcohol msmoke fbaby prenatal1)
, model(linear) method(lasso, plugin)

As above but use BIC-based stepwise

. isis bweight c.mage##c.mage c.fage##c.fage c.mage#c.fage c.fedu##c.medu
i.(mmarried mhisp fhisp foreign alcohol msmoke fbaby prenatal1)
, model(linear) method(stepbic)

Stored results

isis stores the following in e():

Scalars

e(N) number of observations

e(screen_size) screen size

e(k_controls) number of control variables

e(iter) actual number of iterations

e(maxiter) maximum number of iterations

e(k_controls_sel) number of selected controls

Macros

e(cmd_extend) isis

e(title) coefficient table title

e(selopt) selection method suboptions

e(selcmd) selection method command

e(depvar) depvar

e(model) model

e(allvars_sel) name of the selected variables

e(allvars) name of all the variables

Matrices

e(b) coefficient vector

Functions

e(sample) marks estimation sample

Reference

Drukker, D. M., and D. Liu. 2022a. Finite-sample results for lasso and stepwise
Neyman-orthogonal Poisson estimators. Econometric Reviews 41(9): 1047–1076.

Drukker, D. M., and D. Liu. 2022b. posis: Stata command for the
sure-independence-screening Neyman-orthogonal estimator.