Generalized Additive Models Action Set

Provides actions for fitting Generalized Additive Models

gamSelect Action

Performs generalized additive model building.

CASL Syntax

gam.gamSelect <result=results> <status=rc> /
attributes={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
class={{
countMissing=TRUE | FALSE,
descending=TRUE | FALSE,
ignoreMissing=TRUE | FALSE,
levelizeRaw=TRUE | FALSE,
maxLev=integer,
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
ref="FIRST" | "LAST" | double | "string",
required parameter vars={"variable-name-1" <, "variable-name-2", ...>}
}, {...}},
classGlobalOpts={
countMissing=TRUE | FALSE,
descending=TRUE | FALSE,
ignoreMissing=TRUE | FALSE,
levelizeRaw=TRUE | FALSE,
maxLev=integer,
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
ref="FIRST" | "LAST" | double | "string"
},
display={
caseSensitive=TRUE | FALSE,
exclude=TRUE | FALSE,
excludeAll=TRUE | FALSE,
keyIsPath=TRUE | FALSE,
names={"string-1" <, "string-2", ...>},
pathType="LABEL" | "NAME",
traceNames=TRUE | FALSE
},
freq="variable-name",
itDetails=TRUE | FALSE,
maxNameLen=integer | "MAX" | "MIN" | "SASV9",
required parameter model={
allObs=TRUE | FALSE,
depVars={{
name="variable-name",
options={modelopts}
}, {...}},
dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON",
effects={{
interaction="BAR" | "CROSS" | "NONE",
maxInteract=integer,
nest={"string-1" <, "string-2", ...>},
required parameter vars={"string-1" <, "string-2", ...>}
}, {...}},
initialPhi=double,
link="CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
maxPhi=double,
minPhi=double,
offset="variable-name",
phi=double,
splines={{
degree=integer,
details_knots=TRUE | FALSE,
details_penalty=TRUE | FALSE,
details_summary=TRUE | FALSE,
df=double,
diffOrder=integer,
knots=integer | {double-1 <, double-2, ...>},
lowerExteriorKnots={double-1 <, double-2, ...>},
maxKnots=integer,
smooth=double,
upperExteriorKnots={double-1 <, double-2, ...>},
required parameter vars={"variable-name-1" <, "variable-name-2", ...>},
weight1=double,
weight2=double
}, {...}},
trial="variable-name"
},
output={
required parameter casOut={
caslib="string"
compress=TRUE | FALSE
indexVars={"variable-name-1" <, "variable-name-2", ...>}
label="string"
lifetime=64-bit-integer
maxMemSize=64-bit-integer
memoryFormat="DVR" | "INHERIT" | "STANDARD"
name="table-name"
promote=TRUE | FALSE
replace=TRUE | FALSE
replication=integer
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE"
threadBlockSize=64-bit-integer
timeStamp="string"
where={"string-1" <, "string-2", ...>}
},
component=TRUE | FALSE,
copyVars="ALL" | "ALL_MODEL" | "ALL_NUMERIC" | {"variable-name-1" <, "variable-name-2", ...>},
into="string",
intoCutpt=double,
pearson="string",
pred="string",
resid="string",
role="string",
xBeta="string"
},
outputTables={
groupByVarsRaw=TRUE | FALSE,
includeAll=TRUE | FALSE,
names={"string-1" <, "string-2", ...>} | {key-1={casouttable-1} <, key-2={casouttable-2}, ...>},
repeated=TRUE | FALSE,
replace=TRUE | FALSE
},
partByFrac={
seed=integer,
test=double,
validate=double
},
partByVar={
required parameter name="variable-name",
test="string",
train="string",
validate="string"
},
seed=64-bit-integer,
selection={
admmAbsEps=double,
admmExactRidge=TRUE | FALSE,
admmMaxIter=integer,
admmRelEps=double,
admmRho=double,
admmRhoAdaptive=TRUE | FALSE,
boostLinpInMem=integer,
boostMaxIter=integer,
boostStepSize=double,
cvMethod={
index="variable-name"
k=integer
},
distributedSearch=TRUE | FALSE,
glmMaxIter=integer,
l1=double,
l2=double,
l3=double,
maxL1=double,
maxL2=double,
maxL3=double,
method="BOOSTING" | "SHRINKAGE",
numL1=integer,
numL2=integer,
numL3=integer,
rhoL1=double,
rhoL2=double,
rhoL3=double,
stopHorizon=integer,
},
singChol=double,
singular=double,
store={
caslib="string",
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE"
},
required parameter table={
caslib="string",
computedOnDemand=TRUE | FALSE,
computedVars={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
computedVarsProgram="string",
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>},
groupBy={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
groupByMode="NOSORT" | "REDISTRIBUTE",
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter name="table-name",
orderBy={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
singlePass=TRUE | FALSE,
vars={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
where="where-expression",
whereTable={
casLib="string"
dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter name="table-name"
vars={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}}
where="where-expression"
}
},
weight="variable-name"
;
indicates a required parameter

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

required parametertable

specifies the input data table.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 output

required parametercasOut

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

 store

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

Parameter Descriptions

attributes={{casinvardesc-1} <, {casinvardesc-2}, ...>}

changes the attributes of variables used in this action. Currently, attributes specified on the inputs and nominals parameter are ignored.

For more information about specifying the attributes parameter, see the common casinvardesc parameter (Appendix A: Common Parameters).

Alias attribute

class={{classStatement-1} <, {classStatement-2}, ...>}

names the classification variables to use as explanatory variables in the analysis.

The classStatement value can be one or more of the following:

countMissing=TRUE | FALSE

when set to True, treats missing as a valid level for this variable.

Default FALSE
descending=TRUE | FALSE

when set to True, reverses the sort order that is imposed by the order parameter.

Default FALSE
ignoreMissing=TRUE | FALSE

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default FALSE
levelizeRaw=TRUE | FALSE

when set to True, bases levelization for this variable on raw values.

Default FALSE
maxLev=integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

ref="FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

* vars={"variable-name-1" <, "variable-name-2", ...>}

specifies the classification variables.

Alias name

classGlobalOpts={classopts}

lists options that apply to all classification variables.

Long form classGlobalOpts={param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"}
Shortcut form classGlobalOpts="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

The classopts value can be one or more of the following:

countMissing=TRUE | FALSE

when set to True, treats missing as a valid level for this variable.

Default FALSE
descending=TRUE | FALSE

when set to True, reverses the sort order that is imposed by the order parameter.

Default FALSE
ignoreMissing=TRUE | FALSE

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default FALSE
levelizeRaw=TRUE | FALSE

when set to True, bases levelization for this variable on raw values.

Default FALSE
maxLev=integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

For more information, see the description of the order subparameter in the class parameter (Shared Concepts).

param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

For more information, see the description of the param subparameter in the class parameter (Shared Concepts).

ref="FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

display={displayTables}

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

freq="variable-name"

names the numeric variable that contains the frequency of occurrence for each observation.

itDetails=TRUE | FALSE

when set to True, request an iteration history table about the selection process.

Default FALSE

maxNameLen=integer | "MAX" | "MIN" | "SASV9"

specifies the maximum name length for new columns in any output data table that is created on the CAS server.

Alias maxNameLength
Default 32
MAX sets the maximum name length to the maximum integer.
MIN sets the maximum name length to 20.
SASV9 sets the maximum name length to 32 (which is the maximum valid name length in SAS version 9).

* model={gamselmodel}

names the dependent variable, parametric effects, spline effects, and model options.

The gamselmodel value can be one or more of the following:

allObs=TRUE | FALSE

when set to True, constructs a spline by including observations from training, validation, and test data.

Default FALSE
depVars={{responsevar-1} <, {responsevar-2}, ...>}

specifies one or more variables to use as response variables in the model. Not all models support more than one response variable.

Aliases depVar
target

The responsevar value can be one or more of the following:

name="variable-name"

names the response variable.

options={modelopts}

specifies a list of parameters for the response variable.

The modelopts value can be one or more of the following:

descending=TRUE | FALSE

when set to True, reverses the sort order of the response categories. When the descending parameter is set to True and a value is specified for the order parameter, the action orders the response categories according to the requested order and then reverses that order.

Default FALSE
event="FIRST" | "LAST" | double | "string"

specifies the event category for the binary response model. FIRST and LAST refer to the first and last ordered value of the response, respectively.

order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the response variable. This ordering determines which parameters in the model correspond to each level in the data.

ref="FIRST" | "LAST" | double | "string"

specifies the reference level that is used for the response variable. Valid parameter values are a quoted string that specifies a valid level for the response variable or FIRST or LAST. FIRST and LAST refer to the first and last ordered value of the variable, respectively.

dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON"

specifies the response distribution for the model.

effects={{effect-1} <, {effect-2}, ...>}

specifies a list of effects that define the model. Each term in this list is made up of variables specified in the vars parameter and their interaction (which can be NONE, CROSS, or BAR). When the interaction is BAR, it can be limited by the maxInteract parameter.

The effect value can be one or more of the following:

interaction="BAR" | "CROSS" | "NONE"

specifies the type of interaction for the variables.

Alias interact
Default NONE
maxInteract=integer

eliminates interaction effects whose order is higher than the specified integer value when used in conjunction with the BAR interaction.

nest={"string-1" <, "string-2", ...>}

specifies the variables to be nested within the term that is defined by the vars parameter. For terms with a BAR or CROSS interaction, the nest corresponds to the last variable in the vars parameter. For terms with no interaction, the nest is distributed across all variables that are listed in the vars parameter.

* vars={"string-1" <, "string-2", ...>}

specifies the variables to use in defining a term of the effect. You must specify at least one variable.

initialPhi=double

specifies the initial dispersion parameter.

Minimum value 0

specifies the link function for the model.

maxPhi=double

specifies the maximum dispersion parameter.

Minimum value (exclusive) 0
minPhi=double

specifies the minimum dispersion parameter.

Minimum value 0
offset="variable-name"

specifies a numeric offset variable. This variable cannot be a classification variable, a response variable, or one of the explanatory variables.

phi=double

specifies the fixed dispersion parameter.

Alias dispersion
Minimum value 0
splines={{gamselSplineTerm-1} <, {gamselSplineTerm-2}, ...>}

names the spline effects to use in the generalized additive models.

The gamselSplineTerm value can be one or more of the following:

degree=integer

specifies the degree of the spline transformation.

Alias m
Minimum value 1
details_knots=TRUE | FALSE

when set to True, displays knot values for a spline term.

Default FALSE
details_penalty=TRUE | FALSE

when set to True, displays the penalty matrix for a spline term.

Default FALSE
details_summary=TRUE | FALSE

when set to True, displays detailed spline construction parameters.

Default FALSE
df=double

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
diffOrder=integer

specifies the order of the difference penalty for a B-spline.

Default 2
Range 0–10
knots=integer | {double-1 <, double-2, ...>}

specifies a list of knot values to use for a spline term.

lowerExteriorKnots={double-1 <, double-2, ...>}

specifies the lower exterior knots for a spline term.

maxKnots=integer

specifies the maximum number of knots for a spline term.

Minimum value 1
smooth=double

specifies the fixed smoothing parameter for a spline term.

Minimum value 0
upperExteriorKnots={double-1 <, double-2, ...>}

specifies the upper exterior knots for a spline term.

* vars={"variable-name-1" <, "variable-name-2", ...>}

specifies the variables to use in a spline term.

weight1=double

specifies the sparsity penalty strength.

Alias wt1
Default 1
Minimum value 0
weight2=double

specifies the smoothness penalty strength.

Alias wt2
Default 1
Minimum value 0
trial="variable-name"

specifies a positive numeric variable that is the number of trials. When you specify a trial variable, the response variable is called the events variable and it must contain the number of positive responses (or events).

nClassLevelsPrint=integer

limits the display of class levels. The value 0 suppresses all levels.

Minimum value 0

output={gamselOutputStatement}

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

The gamselOutputStatement value can be one or more of the following:

* casOut={casouttable}

specifies the settings for an output table.

For more information about specifying the casOut parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

component=TRUE | FALSE

when set to True, requests componentwise statistics such as standard errors and confidence bands for each individual spline term.

Default FALSE
copyVars="ALL" | "ALL_MODEL" | "ALL_NUMERIC" | {"variable-name-1" <, "variable-name-2", ...>}

specifies a list of one or more variables to be copied from the input table to the output table. You can alternatively specify the value ALL, ALL_MODEL, or ALL_NUMERIC, which respectively copies all variables, all variables used in the modeling, or all numeric variables from the input table to the output table.

into="string"

names the predicted response level. The default name is Into.

intoCutpt=double

specifies the predicted event probability that determines the predicted binary response level.

Default 0.5
Range (0, 1)
pearson="string"

names the Pearson chi-square residual. The default name is Pearson.

Aliases resChi
pears
pred="string"

names the predicted value. If you do not specify any output statistics, then the predicted value is named Pred by default.

Aliases p
predicted
iLink
mean
resid="string"

names the residual. The default name is Resid.

Aliases residual
r
role="string"

identifies the training, validation, and test roles for the observations.

xBeta="string"

names the linear predictor. The default name is Xbeta.

Alias linp

outputTables={outputTables}

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

Alias displayOut

parmEstLevDetails="NONE" | "RAW" | "RAW_AND_FORMATTED"

specifies whether to add raw and formatted values of classification variables to the parameter estimates table.

Default RAW
NONE

does not add raw or formatted values of classification variables to the parameter estimates table.

RAW

adds raw values of classification variables to the parameter estimates table.

RAW_AND_FORMATTED

adds raw and formatted values of classification variables to the parameter estimates table.

partByFrac={partByFracStatement}

specifies the fractions of the data to be used for validation and testing.

The partByFracStatement value can be one or more of the following:

seed=integer

specifies the seed to use in the random number generator that is used for partitioning the data.

Default 0
test=double

randomly assigns the specified proportion of observations in the input table to the testing role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Range 0–1
validate=double

randomly assigns the specified proportion of observations in the input table to the validation role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Alias valid
Range 0–1

partByVar={partByVarStatement}

names the variable and its values used to partition the data into training, validation, and testing roles.

Long form partByVar={name="variable-name"}
Shortcut form partByVar="variable-name"

The partByVarStatement value can be one or more of the following:

* name="variable-name"

names the variable in the input table whose values are used to assign roles to each observation.

test="string"

specifies the formatted value of the variable that is used to assign observations to the testing role.

train="string"

specifies the formatted value of the variable that is used to assign observations to the training role. If you do not specify the train parameter, then all observations whose roles are not determined by the test and validate parameters are assigned to training.

validate="string"

specifies the formatted value of the variable that is used to assign observations to the validation role.

Alias valid

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

selection={gamselSelect}

specifies the method and options for performing model selection.

Long form selection={method="BOOSTING" | "SHRINKAGE"}
Shortcut form selection="BOOSTING" | "SHRINKAGE"

The gamselSelect value can be one or more of the following:

admmAbsEps=double

specifies the absolute convergence tolerance for the alternating direction method of multipliers (ADMM) algorithm.

Alias absEps
Default 1E-06
Minimum value (exclusive) 0
admmExactRidge=TRUE | FALSE

when set to True, requests the exact ridge solution in the ADMM algorithm.

Aliases admmRidge
ridge
Default FALSE
admmMaxIter=integer

specifies the maximum number of ADMM iterations.

Default 10000
Minimum value 0
admmRelEps=double

specifies the relative convergence tolerance for the ADMM algorithm.

Alias relEps
Default 0.0001
Minimum value (exclusive) 0
admmRho=double

specifies the penalty parameter for the ADMM algorithm.

Alias rho
Minimum value (exclusive) 0
admmRhoAdaptive=TRUE | FALSE

when set to True, requests the adaptive penalty parameter for the ADMM algorithm.

Aliases admmAdaptiveRho
adaptiveRho
Default TRUE
boostLinpInMem=integer

specifies the maximum number of observations for which the boosting selection method stores the linear predictor values in memory when you are training the model.

Alias boostXBetaInMem
Default 500000
Minimum value 0
boostMaxIter=integer

specifies the maximum number of selection steps to perform.

Alias boostMaxSteps
Minimum value 1
boostStepSize=double

specifies the step size for the boosting algorithm.

Alias boostLearningRate
Default 0.1
Range (0, 1)
choose="CV" | "VALIDATE"

specifies the criterion for choosing the model. The specified criterion is evaluated at each step of the selection process, and the model that yields the best value of the criterion is chosen.

CV

specifies k-fold cross validation of the average square error.

VALIDATE

specifies the average square error for the validation data.

cvMethod={gamselCVMethod}

specifies the method to use for partitioning the data into folds for cross validation.

The gamselCVMethod value can be one or more of the following:

index="variable-name"

names the variable to use for partitioning the data into folds for cross validation.

k=integer

specifies the number of partition folds in the random cross validation process.

Alias kfold
Minimum value 2
distributedSearch=TRUE | FALSE

when set to True, uses the distributed algorithm to evaluate different regularization parameters.

Default TRUE
glmMaxIter=integer

specifies the maximum number of likelihood estimation iterations.

Default 500
Minimum value 0
l1=double

specifies the regularization parameter for spline components.

Alias lambda1
Minimum value 0
l2=double

specifies the regularization parameter for nonlinear trends of spline components.

Alias lambda2
Minimum value 0
l3=double

specifies the generalized ridge regularization parameter for nonlinear trends of spline components.

Alias lambda3
Default 0
Minimum value 0
maxL1=double

specifies the maximum regularization parameter for spline components.

Alias maxLambda1
Minimum value 0
maxL2=double

specifies the maximum regularization parameter for nonlinear trends of spline components.

Alias maxLambda2
Minimum value 0
maxL3=double

specifies the maximum ridge regularization parameter for nonlinear trends of spline components.

Alias maxLambda3
Minimum value 0
method="BOOSTING" | "SHRINKAGE"

specifies the model selection method.

Default BOOSTING
numL1=integer

specifies the number of regularization parameter candidates for spline components.

Alias numLambda1
Default 20
Minimum value 0
numL2=integer

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda2
Default 10
Minimum value 0
numL3=integer

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda3
Default 10
Minimum value 0
rhoL1=double

specifies the number of regularization parameter candidates for spline components.

Alias rhoLambda1
Default 0.8
Range (0, 1)
rhoL2=double

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda2
Default 0.5
Range (0, 1)
rhoL3=double

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda3
Default 0.5
Range (0, 1)
stopHorizon=integer

specifies the number of consecutive steps at which the stop criterion must worsen in order for a local extremum to be detected.

Minimum value 0
stopTolerance=double

specifies the relative change tolerance for evaluating the early stopping criterion.

Alias stopTol
Minimum value 0

singChol=double

specifies the singularity criterion in Cholesky decomposition and matrix inversion operations.

Default 1E-12
Range 0–1

singular=double

specifies the singularity criterion in truncated eigendecomposition to determine its convergence.

Default 1E-12
Range 0–1

store={casouttablebasic}

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

For more information about specifying the store parameter, see the common casouttablebasic parameter (Appendix A: Common Parameters).

Aliases savemodel
save
savestate

* table={castable}

specifies the input data table.

For more information about specifying the table parameter, see the common castable (Form 1) parameter (Appendix A: Common Parameters).

weight="variable-name"

names the numeric variable to use to perform a weighted analysis of the data.

gamSelect Action

Performs generalized additive model building.

Lua Syntax

results, info = s:gam_gamSelect{
attributes={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
class={{
countMissing=true | false,
descending=true | false,
ignoreMissing=true | false,
levelizeRaw=true | false,
maxLev=integer,
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
ref="FIRST" | "LAST" | double | "string",
required parameter vars={"variable-name-1" <, "variable-name-2", ...>}
}, {...}},
classGlobalOpts={
countMissing=true | false,
descending=true | false,
ignoreMissing=true | false,
levelizeRaw=true | false,
maxLev=integer,
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
ref="FIRST" | "LAST" | double | "string"
},
display={
caseSensitive=true | false,
exclude=true | false,
excludeAll=true | false,
keyIsPath=true | false,
names={"string-1" <, "string-2", ...>},
pathType="LABEL" | "NAME",
traceNames=true | false
},
freq="variable-name",
itDetails=true | false,
maxNameLen=integer | "MAX" | "MIN" | "SASV9",
required parameter model={
allObs=true | false,
depVars={{
name="variable-name",
options={modelopts}
}, {...}},
dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON",
effects={{
interaction="BAR" | "CROSS" | "NONE",
maxInteract=integer,
nest={"string-1" <, "string-2", ...>},
required parameter vars={"string-1" <, "string-2", ...>}
}, {...}},
initialPhi=double,
link="CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
maxPhi=double,
minPhi=double,
offset="variable-name",
phi=double,
splines={{
degree=integer,
details_knots=true | false,
details_penalty=true | false,
details_summary=true | false,
df=double,
diffOrder=integer,
knots=integer | {double-1 <, double-2, ...>},
lowerExteriorKnots={double-1 <, double-2, ...>},
maxKnots=integer,
smooth=double,
upperExteriorKnots={double-1 <, double-2, ...>},
required parameter vars={"variable-name-1" <, "variable-name-2", ...>},
weight1=double,
weight2=double
}, {...}},
trial="variable-name"
},
output={
required parameter casOut={
caslib="string"
compress=true | false
indexVars={"variable-name-1" <, "variable-name-2", ...>}
label="string"
lifetime=64-bit-integer
maxMemSize=64-bit-integer
memoryFormat="DVR" | "INHERIT" | "STANDARD"
name="table-name"
promote=true | false
replace=true | false
replication=integer
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE"
threadBlockSize=64-bit-integer
timeStamp="string"
where={"string-1" <, "string-2", ...>}
},
component=true | false,
copyVars="ALL" | "ALL_MODEL" | "ALL_NUMERIC" | {"variable-name-1" <, "variable-name-2", ...>},
into="string",
intoCutpt=double,
pearson="string",
pred="string",
resid="string",
role="string",
xBeta="string"
},
outputTables={
groupByVarsRaw=true | false,
includeAll=true | false,
names={"string-1" <, "string-2", ...>} | {key-1={casouttable-1} <, key-2={casouttable-2}, ...>},
repeated=true | false,
replace=true | false
},
partByFrac={
seed=integer,
test=double,
validate=double
},
partByVar={
required parameter name="variable-name",
test="string",
train="string",
validate="string"
},
seed=64-bit-integer,
selection={
admmAbsEps=double,
admmExactRidge=true | false,
admmMaxIter=integer,
admmRelEps=double,
admmRho=double,
admmRhoAdaptive=true | false,
boostLinpInMem=integer,
boostMaxIter=integer,
boostStepSize=double,
cvMethod={
index="variable-name"
k=integer
},
distributedSearch=true | false,
glmMaxIter=integer,
l1=double,
l2=double,
l3=double,
maxL1=double,
maxL2=double,
maxL3=double,
method="BOOSTING" | "SHRINKAGE",
numL1=integer,
numL2=integer,
numL3=integer,
rhoL1=double,
rhoL2=double,
rhoL3=double,
stopHorizon=integer,
},
singChol=double,
singular=double,
store={
caslib="string",
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=true | false,
replace=true | false,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE"
},
required parameter table={
caslib="string",
computedOnDemand=true | false,
computedVars={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
computedVarsProgram="string",
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>},
groupBy={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
groupByMode="NOSORT" | "REDISTRIBUTE",
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter name="table-name",
orderBy={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
singlePass=true | false,
vars={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
where="where-expression",
whereTable={
casLib="string"
dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter name="table-name"
vars={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}}
where="where-expression"
}
},
weight="variable-name"
}
indicates a required parameter

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

required parametertable

specifies the input data table.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 output

required parametercasOut

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

 store

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

Parameter Descriptions

attributes={{casinvardesc-1} <, {casinvardesc-2}, ...>}

changes the attributes of variables used in this action. Currently, attributes specified on the inputs and nominals parameter are ignored.

For more information about specifying the attributes parameter, see the common casinvardesc parameter (Appendix A: Common Parameters).

Alias attribute

class={{classStatement-1} <, {classStatement-2}, ...>}

names the classification variables to use as explanatory variables in the analysis.

The classStatement value can be one or more of the following:

countMissing=true | false

when set to True, treats missing as a valid level for this variable.

Default false
descending=true | false

when set to True, reverses the sort order that is imposed by the order parameter.

Default false
ignoreMissing=true | false

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default false
levelizeRaw=true | false

when set to True, bases levelization for this variable on raw values.

Default false
maxLev=integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

ref="FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

* vars={"variable-name-1" <, "variable-name-2", ...>}

specifies the classification variables.

Alias name

classGlobalOpts={classopts}

lists options that apply to all classification variables.

Long form classGlobalOpts={param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"}
Shortcut form classGlobalOpts="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

The classopts value can be one or more of the following:

countMissing=true | false

when set to True, treats missing as a valid level for this variable.

Default false
descending=true | false

when set to True, reverses the sort order that is imposed by the order parameter.

Default false
ignoreMissing=true | false

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default false
levelizeRaw=true | false

when set to True, bases levelization for this variable on raw values.

Default false
maxLev=integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

For more information, see the description of the order subparameter in the class parameter (Shared Concepts).

param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

For more information, see the description of the param subparameter in the class parameter (Shared Concepts).

ref="FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

display={displayTables}

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

freq="variable-name"

names the numeric variable that contains the frequency of occurrence for each observation.

itDetails=true | false

when set to True, request an iteration history table about the selection process.

Default false

maxNameLen=integer | "MAX" | "MIN" | "SASV9"

specifies the maximum name length for new columns in any output data table that is created on the CAS server.

Alias maxNameLength
Default 32
MAX sets the maximum name length to the maximum integer.
MIN sets the maximum name length to 20.
SASV9 sets the maximum name length to 32 (which is the maximum valid name length in SAS version 9).

* model={gamselmodel}

names the dependent variable, parametric effects, spline effects, and model options.

The gamselmodel value can be one or more of the following:

allObs=true | false

when set to True, constructs a spline by including observations from training, validation, and test data.

Default false
depVars={{responsevar-1} <, {responsevar-2}, ...>}

specifies one or more variables to use as response variables in the model. Not all models support more than one response variable.

Aliases depVar
target

The responsevar value can be one or more of the following:

name="variable-name"

names the response variable.

options={modelopts}

specifies a list of parameters for the response variable.

The modelopts value can be one or more of the following:

descending=true | false

when set to True, reverses the sort order of the response categories. When the descending parameter is set to True and a value is specified for the order parameter, the action orders the response categories according to the requested order and then reverses that order.

Default false
event="FIRST" | "LAST" | double | "string"

specifies the event category for the binary response model. FIRST and LAST refer to the first and last ordered value of the response, respectively.

order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the response variable. This ordering determines which parameters in the model correspond to each level in the data.

ref="FIRST" | "LAST" | double | "string"

specifies the reference level that is used for the response variable. Valid parameter values are a quoted string that specifies a valid level for the response variable or FIRST or LAST. FIRST and LAST refer to the first and last ordered value of the variable, respectively.

dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON"

specifies the response distribution for the model.

effects={{effect-1} <, {effect-2}, ...>}

specifies a list of effects that define the model. Each term in this list is made up of variables specified in the vars parameter and their interaction (which can be NONE, CROSS, or BAR). When the interaction is BAR, it can be limited by the maxInteract parameter.

The effect value can be one or more of the following:

interaction="BAR" | "CROSS" | "NONE"

specifies the type of interaction for the variables.

Alias interact
Default NONE
maxInteract=integer

eliminates interaction effects whose order is higher than the specified integer value when used in conjunction with the BAR interaction.

nest={"string-1" <, "string-2", ...>}

specifies the variables to be nested within the term that is defined by the vars parameter. For terms with a BAR or CROSS interaction, the nest corresponds to the last variable in the vars parameter. For terms with no interaction, the nest is distributed across all variables that are listed in the vars parameter.

* vars={"string-1" <, "string-2", ...>}

specifies the variables to use in defining a term of the effect. You must specify at least one variable.

initialPhi=double

specifies the initial dispersion parameter.

Minimum value 0

specifies the link function for the model.

maxPhi=double

specifies the maximum dispersion parameter.

Minimum value (exclusive) 0
minPhi=double

specifies the minimum dispersion parameter.

Minimum value 0
offset="variable-name"

specifies a numeric offset variable. This variable cannot be a classification variable, a response variable, or one of the explanatory variables.

phi=double

specifies the fixed dispersion parameter.

Alias dispersion
Minimum value 0
splines={{gamselSplineTerm-1} <, {gamselSplineTerm-2}, ...>}

names the spline effects to use in the generalized additive models.

The gamselSplineTerm value can be one or more of the following:

degree=integer

specifies the degree of the spline transformation.

Alias m
Minimum value 1
details_knots=true | false

when set to True, displays knot values for a spline term.

Default false
details_penalty=true | false

when set to True, displays the penalty matrix for a spline term.

Default false
details_summary=true | false

when set to True, displays detailed spline construction parameters.

Default false
df=double

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
diffOrder=integer

specifies the order of the difference penalty for a B-spline.

Default 2
Range 0–10
knots=integer | {double-1 <, double-2, ...>}

specifies a list of knot values to use for a spline term.

lowerExteriorKnots={double-1 <, double-2, ...>}

specifies the lower exterior knots for a spline term.

maxKnots=integer

specifies the maximum number of knots for a spline term.

Minimum value 1
smooth=double

specifies the fixed smoothing parameter for a spline term.

Minimum value 0
upperExteriorKnots={double-1 <, double-2, ...>}

specifies the upper exterior knots for a spline term.

* vars={"variable-name-1" <, "variable-name-2", ...>}

specifies the variables to use in a spline term.

weight1=double

specifies the sparsity penalty strength.

Alias wt1
Default 1
Minimum value 0
weight2=double

specifies the smoothness penalty strength.

Alias wt2
Default 1
Minimum value 0
trial="variable-name"

specifies a positive numeric variable that is the number of trials. When you specify a trial variable, the response variable is called the events variable and it must contain the number of positive responses (or events).

nClassLevelsPrint=integer

limits the display of class levels. The value 0 suppresses all levels.

Minimum value 0

output={gamselOutputStatement}

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

The gamselOutputStatement value can be one or more of the following:

* casOut={casouttable}

specifies the settings for an output table.

For more information about specifying the casOut parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

component=true | false

when set to True, requests componentwise statistics such as standard errors and confidence bands for each individual spline term.

Default false
copyVars="ALL" | "ALL_MODEL" | "ALL_NUMERIC" | {"variable-name-1" <, "variable-name-2", ...>}

specifies a list of one or more variables to be copied from the input table to the output table. You can alternatively specify the value ALL, ALL_MODEL, or ALL_NUMERIC, which respectively copies all variables, all variables used in the modeling, or all numeric variables from the input table to the output table.

into="string"

names the predicted response level. The default name is Into.

intoCutpt=double

specifies the predicted event probability that determines the predicted binary response level.

Default 0.5
Range (0, 1)
pearson="string"

names the Pearson chi-square residual. The default name is Pearson.

Aliases resChi
pears
pred="string"

names the predicted value. If you do not specify any output statistics, then the predicted value is named Pred by default.

Aliases p
predicted
iLink
mean
resid="string"

names the residual. The default name is Resid.

Aliases residual
r
role="string"

identifies the training, validation, and test roles for the observations.

xBeta="string"

names the linear predictor. The default name is Xbeta.

Alias linp

outputTables={outputTables}

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

Alias displayOut

parmEstLevDetails="NONE" | "RAW" | "RAW_AND_FORMATTED"

specifies whether to add raw and formatted values of classification variables to the parameter estimates table.

Default RAW
NONE

does not add raw or formatted values of classification variables to the parameter estimates table.

RAW

adds raw values of classification variables to the parameter estimates table.

RAW_AND_FORMATTED

adds raw and formatted values of classification variables to the parameter estimates table.

partByFrac={partByFracStatement}

specifies the fractions of the data to be used for validation and testing.

The partByFracStatement value can be one or more of the following:

seed=integer

specifies the seed to use in the random number generator that is used for partitioning the data.

Default 0
test=double

randomly assigns the specified proportion of observations in the input table to the testing role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Range 0–1
validate=double

randomly assigns the specified proportion of observations in the input table to the validation role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Alias valid
Range 0–1

partByVar={partByVarStatement}

names the variable and its values used to partition the data into training, validation, and testing roles.

Long form partByVar={name="variable-name"}
Shortcut form partByVar="variable-name"

The partByVarStatement value can be one or more of the following:

* name="variable-name"

names the variable in the input table whose values are used to assign roles to each observation.

test="string"

specifies the formatted value of the variable that is used to assign observations to the testing role.

train="string"

specifies the formatted value of the variable that is used to assign observations to the training role. If you do not specify the train parameter, then all observations whose roles are not determined by the test and validate parameters are assigned to training.

validate="string"

specifies the formatted value of the variable that is used to assign observations to the validation role.

Alias valid

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

selection={gamselSelect}

specifies the method and options for performing model selection.

Long form selection={method="BOOSTING" | "SHRINKAGE"}
Shortcut form selection="BOOSTING" | "SHRINKAGE"

The gamselSelect value can be one or more of the following:

admmAbsEps=double

specifies the absolute convergence tolerance for the alternating direction method of multipliers (ADMM) algorithm.

Alias absEps
Default 1E-06
Minimum value (exclusive) 0
admmExactRidge=true | false

when set to True, requests the exact ridge solution in the ADMM algorithm.

Aliases admmRidge
ridge
Default false
admmMaxIter=integer

specifies the maximum number of ADMM iterations.

Default 10000
Minimum value 0
admmRelEps=double

specifies the relative convergence tolerance for the ADMM algorithm.

Alias relEps
Default 0.0001
Minimum value (exclusive) 0
admmRho=double

specifies the penalty parameter for the ADMM algorithm.

Alias rho
Minimum value (exclusive) 0
admmRhoAdaptive=true | false

when set to True, requests the adaptive penalty parameter for the ADMM algorithm.

Aliases admmAdaptiveRho
adaptiveRho
Default true
boostLinpInMem=integer

specifies the maximum number of observations for which the boosting selection method stores the linear predictor values in memory when you are training the model.

Alias boostXBetaInMem
Default 500000
Minimum value 0
boostMaxIter=integer

specifies the maximum number of selection steps to perform.

Alias boostMaxSteps
Minimum value 1
boostStepSize=double

specifies the step size for the boosting algorithm.

Alias boostLearningRate
Default 0.1
Range (0, 1)
choose="CV" | "VALIDATE"

specifies the criterion for choosing the model. The specified criterion is evaluated at each step of the selection process, and the model that yields the best value of the criterion is chosen.

CV

specifies k-fold cross validation of the average square error.

VALIDATE

specifies the average square error for the validation data.

cvMethod={gamselCVMethod}

specifies the method to use for partitioning the data into folds for cross validation.

The gamselCVMethod value can be one or more of the following:

index="variable-name"

names the variable to use for partitioning the data into folds for cross validation.

k=integer

specifies the number of partition folds in the random cross validation process.

Alias kfold
Minimum value 2
distributedSearch=true | false

when set to True, uses the distributed algorithm to evaluate different regularization parameters.

Default true
glmMaxIter=integer

specifies the maximum number of likelihood estimation iterations.

Default 500
Minimum value 0
l1=double

specifies the regularization parameter for spline components.

Alias lambda1
Minimum value 0
l2=double

specifies the regularization parameter for nonlinear trends of spline components.

Alias lambda2
Minimum value 0
l3=double

specifies the generalized ridge regularization parameter for nonlinear trends of spline components.

Alias lambda3
Default 0
Minimum value 0
maxL1=double

specifies the maximum regularization parameter for spline components.

Alias maxLambda1
Minimum value 0
maxL2=double

specifies the maximum regularization parameter for nonlinear trends of spline components.

Alias maxLambda2
Minimum value 0
maxL3=double

specifies the maximum ridge regularization parameter for nonlinear trends of spline components.

Alias maxLambda3
Minimum value 0
method="BOOSTING" | "SHRINKAGE"

specifies the model selection method.

Default BOOSTING
numL1=integer

specifies the number of regularization parameter candidates for spline components.

Alias numLambda1
Default 20
Minimum value 0
numL2=integer

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda2
Default 10
Minimum value 0
numL3=integer

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda3
Default 10
Minimum value 0
rhoL1=double

specifies the number of regularization parameter candidates for spline components.

Alias rhoLambda1
Default 0.8
Range (0, 1)
rhoL2=double

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda2
Default 0.5
Range (0, 1)
rhoL3=double

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda3
Default 0.5
Range (0, 1)
stopHorizon=integer

specifies the number of consecutive steps at which the stop criterion must worsen in order for a local extremum to be detected.

Minimum value 0
stopTolerance=double

specifies the relative change tolerance for evaluating the early stopping criterion.

Alias stopTol
Minimum value 0

singChol=double

specifies the singularity criterion in Cholesky decomposition and matrix inversion operations.

Default 1E-12
Range 0–1

singular=double

specifies the singularity criterion in truncated eigendecomposition to determine its convergence.

Default 1E-12
Range 0–1

store={casouttablebasic}

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

For more information about specifying the store parameter, see the common casouttablebasic parameter (Appendix A: Common Parameters).

Aliases savemodel
save
savestate

* table={castable}

specifies the input data table.

For more information about specifying the table parameter, see the common castable (Form 1) parameter (Appendix A: Common Parameters).

weight="variable-name"

names the numeric variable to use to perform a weighted analysis of the data.

gamSelect Action

Performs generalized additive model building.

Python Syntax

results=s.gam.gamSelect(
attributes=[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
class_=[{
"countMissing":True | False,
"descending":True | False,
"ignoreMissing":True | False,
"levelizeRaw":True | False,
"maxLev":integer,
"order":"FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
"param":"BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
"ref":"FIRST" | "LAST" | double | "string",
required parameter "vars":["variable-name-1" <, "variable-name-2", ...>]
}<, {...}>],
classGlobalOpts={
"countMissing":True | False,
"descending":True | False,
"ignoreMissing":True | False,
"levelizeRaw":True | False,
"maxLev":integer,
"order":"FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
"param":"BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
"ref":"FIRST" | "LAST" | double | "string"
},
display={
"caseSensitive":True | False,
"exclude":True | False,
"excludeAll":True | False,
"keyIsPath":True | False,
"names":["string-1" <, "string-2", ...>],
"pathType":"LABEL" | "NAME",
"traceNames":True | False
},
freq="variable-name",
itDetails=True | False,
maxNameLen=integer | "MAX" | "MIN" | "SASV9",
required parameter model={
"allObs":True | False,
"depVars":[{
"name":"variable-name",
"options":{modelopts}
}<, {...}>],
"dist":"BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON",
"effects":[{
"interaction":"BAR" | "CROSS" | "NONE",
"maxInteract":integer,
"nest":["string-1" <, "string-2", ...>],
required parameter "vars":["string-1" <, "string-2", ...>]
}<, {...}>],
"initialPhi":double,
"link":"CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
"maxPhi":double,
"minPhi":double,
"offset":"variable-name",
"phi":double,
"splines":[{
"degree":integer,
"details_knots":True | False,
"details_penalty":True | False,
"details_summary":True | False,
"df":double,
"diffOrder":integer,
"knots":integer | [double-1 <, double-2, ...>],
"lowerExteriorKnots":[double-1 <, double-2, ...>],
"maxKnots":integer,
"smooth":double,
"upperExteriorKnots":[double-1 <, double-2, ...>],
required parameter "vars":["variable-name-1" <, "variable-name-2", ...>],
"weight1":double,
"weight2":double
}<, {...}>],
"trial":"variable-name"
},
output={
required parameter "casOut":{
"caslib":"string"
"compress":True | False
"indexVars":["variable-name-1" <, "variable-name-2", ...>]
"label":"string"
"lifetime":64-bit-integer
"maxMemSize":64-bit-integer
"memoryFormat":"DVR" | "INHERIT" | "STANDARD"
"name":"table-name"
"promote":True | False
"replace":True | False
"replication":integer
"tableRedistUpPolicy":"DEFER" | "NOREDIST" | "REBALANCE"
"threadBlockSize":64-bit-integer
"timeStamp":"string"
"where":["string-1" <, "string-2", ...>]
},
"component":True | False,
"copyVars":"ALL" | "ALL_MODEL" | "ALL_NUMERIC" | ["variable-name-1" <, "variable-name-2", ...>],
"into":"string",
"intoCutpt":double,
"pearson":"string",
"pred":"string",
"resid":"string",
"role":"string",
"xBeta":"string"
},
outputTables={
"groupByVarsRaw":True | False,
"includeAll":True | False,
"names":["string-1" <, "string-2", ...>] | {"key-1":{casouttable-1} <, "key-2":{casouttable-2}, ...>},
"repeated":True | False,
"replace":True | False
},
partByFrac={
"seed":integer,
"test":double,
"validate":double
},
partByVar={
required parameter "name":"variable-name",
"test":"string",
"train":"string",
"validate":"string"
},
seed=64-bit-integer,
selection={
"admmAbsEps":double,
"admmExactRidge":True | False,
"admmMaxIter":integer,
"admmRelEps":double,
"admmRho":double,
"admmRhoAdaptive":True | False,
"boostLinpInMem":integer,
"boostMaxIter":integer,
"boostStepSize":double,
"cvMethod":{
"index":"variable-name"
"k":integer
},
"distributedSearch":True | False,
"glmMaxIter":integer,
"l1":double,
"l2":double,
"l3":double,
"maxL1":double,
"maxL2":double,
"maxL3":double,
"method":"BOOSTING" | "SHRINKAGE",
"numL1":integer,
"numL2":integer,
"numL3":integer,
"rhoL1":double,
"rhoL2":double,
"rhoL3":double,
"stopHorizon":integer,
"stopTolerance":double
},
singChol=double,
singular=double,
store={
"caslib":"string",
"indexVars":["variable-name-1" <, "variable-name-2", ...>],
"label":"string",
"lifetime":64-bit-integer,
"memoryFormat":"DVR" | "INHERIT" | "STANDARD",
"name":"table-name",
"promote":True | False,
"replace":True | False,
"replication":integer,
"tableRedistUpPolicy":"DEFER" | "NOREDIST" | "REBALANCE"
},
required parameter table={
"caslib":"string",
"computedOnDemand":True | False,
"computedVars":[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"computedVarsProgram":"string",
"dataSourceOptions":{"key-1":{any-list-or-data-type-1} <, "key-2":{any-list-or-data-type-2}, ...>},
"groupBy":[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"groupByMode":"NOSORT" | "REDISTRIBUTE",
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter "name":"table-name",
"orderBy":[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"singlePass":True | False,
"vars":[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"where":"where-expression",
"whereTable":{
"casLib":"string"
"dataSourceOptions":{adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter "name":"table-name"
"vars":[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>]
"where":"where-expression"
}
},
weight="variable-name"
)
indicates a required parameter

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

required parametertable

specifies the input data table.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 output

required parametercasOut

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

 store

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

Parameter Descriptions

attributes=[{casinvardesc-1} <, {casinvardesc-2}, ...>]

changes the attributes of variables used in this action. Currently, attributes specified on the inputs and nominals parameter are ignored.

For more information about specifying the attributes parameter, see the common casinvardesc parameter (Appendix A: Common Parameters).

Alias attribute

class_=[{classStatement-1} <, {classStatement-2}, ...>]

names the classification variables to use as explanatory variables in the analysis.

The classStatement value can be one or more of the following:

"countMissing":True | False

when set to True, treats missing as a valid level for this variable.

Default False
"descending":True | False

when set to True, reverses the sort order that is imposed by the order parameter.

Default False
"ignoreMissing":True | False

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default False
"levelizeRaw":True | False

when set to True, bases levelization for this variable on raw values.

Default False
"maxLev":integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
"order":"FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

"param":"BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

"ref":"FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

* "vars":["variable-name-1" <, "variable-name-2", ...>]

specifies the classification variables.

Alias name

classGlobalOpts={classopts}

lists options that apply to all classification variables.

Long form classGlobalOpts={"param":"BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"}
Shortcut form classGlobalOpts="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

The classopts value can be one or more of the following:

"countMissing":True | False

when set to True, treats missing as a valid level for this variable.

Default False
"descending":True | False

when set to True, reverses the sort order that is imposed by the order parameter.

Default False
"ignoreMissing":True | False

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default False
"levelizeRaw":True | False

when set to True, bases levelization for this variable on raw values.

Default False
"maxLev":integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
"order":"FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

For more information, see the description of the order subparameter in the class parameter (Shared Concepts).

"param":"BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

For more information, see the description of the param subparameter in the class parameter (Shared Concepts).

"ref":"FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

display={displayTables}

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

freq="variable-name"

names the numeric variable that contains the frequency of occurrence for each observation.

itDetails=True | False

when set to True, request an iteration history table about the selection process.

Default False

maxNameLen=integer | "MAX" | "MIN" | "SASV9"

specifies the maximum name length for new columns in any output data table that is created on the CAS server.

Alias maxNameLength
Default 32
MAX sets the maximum name length to the maximum integer.
MIN sets the maximum name length to 20.
SASV9 sets the maximum name length to 32 (which is the maximum valid name length in SAS version 9).

* model={gamselmodel}

names the dependent variable, parametric effects, spline effects, and model options.

The gamselmodel value can be one or more of the following:

"allObs":True | False

when set to True, constructs a spline by including observations from training, validation, and test data.

Default False
"depVars":[{responsevar-1} <, {responsevar-2}, ...>]

specifies one or more variables to use as response variables in the model. Not all models support more than one response variable.

Aliases depVar
target

The responsevar value can be one or more of the following:

"name":"variable-name"

names the response variable.

"options":{modelopts}

specifies a list of parameters for the response variable.

The modelopts value can be one or more of the following:

"descending":True | False

when set to True, reverses the sort order of the response categories. When the descending parameter is set to True and a value is specified for the order parameter, the action orders the response categories according to the requested order and then reverses that order.

Default False
"event":"FIRST" | "LAST" | double | "string"

specifies the event category for the binary response model. FIRST and LAST refer to the first and last ordered value of the response, respectively.

"order":"FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the response variable. This ordering determines which parameters in the model correspond to each level in the data.

"ref":"FIRST" | "LAST" | double | "string"

specifies the reference level that is used for the response variable. Valid parameter values are a quoted string that specifies a valid level for the response variable or FIRST or LAST. FIRST and LAST refer to the first and last ordered value of the variable, respectively.

"dist":"BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON"

specifies the response distribution for the model.

"effects":[{effect-1} <, {effect-2}, ...>]

specifies a list of effects that define the model. Each term in this list is made up of variables specified in the vars parameter and their interaction (which can be NONE, CROSS, or BAR). When the interaction is BAR, it can be limited by the maxInteract parameter.

The effect value can be one or more of the following:

"interaction":"BAR" | "CROSS" | "NONE"

specifies the type of interaction for the variables.

Alias interact
Default NONE
"maxInteract":integer

eliminates interaction effects whose order is higher than the specified integer value when used in conjunction with the BAR interaction.

"nest":["string-1" <, "string-2", ...>]

specifies the variables to be nested within the term that is defined by the vars parameter. For terms with a BAR or CROSS interaction, the nest corresponds to the last variable in the vars parameter. For terms with no interaction, the nest is distributed across all variables that are listed in the vars parameter.

* "vars":["string-1" <, "string-2", ...>]

specifies the variables to use in defining a term of the effect. You must specify at least one variable.

"initialPhi":double

specifies the initial dispersion parameter.

Minimum value 0

specifies the link function for the model.

"maxPhi":double

specifies the maximum dispersion parameter.

Minimum value (exclusive) 0
"minPhi":double

specifies the minimum dispersion parameter.

Minimum value 0
"offset":"variable-name"

specifies a numeric offset variable. This variable cannot be a classification variable, a response variable, or one of the explanatory variables.

"phi":double

specifies the fixed dispersion parameter.

Alias dispersion
Minimum value 0
"splines":[{gamselSplineTerm-1} <, {gamselSplineTerm-2}, ...>]

names the spline effects to use in the generalized additive models.

The gamselSplineTerm value can be one or more of the following:

"degree":integer

specifies the degree of the spline transformation.

Alias m
Minimum value 1
"details_knots":True | False

when set to True, displays knot values for a spline term.

Default False
"details_penalty":True | False

when set to True, displays the penalty matrix for a spline term.

Default False
"details_summary":True | False

when set to True, displays detailed spline construction parameters.

Default False
"df":double

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
"diffOrder":integer

specifies the order of the difference penalty for a B-spline.

Default 2
Range 0–10
"knots":integer | [double-1 <, double-2, ...>]

specifies a list of knot values to use for a spline term.

"lowerExteriorKnots":[double-1 <, double-2, ...>]

specifies the lower exterior knots for a spline term.

"maxKnots":integer

specifies the maximum number of knots for a spline term.

Minimum value 1
"smooth":double

specifies the fixed smoothing parameter for a spline term.

Minimum value 0
"upperExteriorKnots":[double-1 <, double-2, ...>]

specifies the upper exterior knots for a spline term.

* "vars":["variable-name-1" <, "variable-name-2", ...>]

specifies the variables to use in a spline term.

"weight1":double

specifies the sparsity penalty strength.

Alias wt1
Default 1
Minimum value 0
"weight2":double

specifies the smoothness penalty strength.

Alias wt2
Default 1
Minimum value 0
"trial":"variable-name"

specifies a positive numeric variable that is the number of trials. When you specify a trial variable, the response variable is called the events variable and it must contain the number of positive responses (or events).

nClassLevelsPrint=integer

limits the display of class levels. The value 0 suppresses all levels.

Minimum value 0

output={gamselOutputStatement}

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

The gamselOutputStatement value can be one or more of the following:

* "casOut":{casouttable}

specifies the settings for an output table.

For more information about specifying the casOut parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

"component":True | False

when set to True, requests componentwise statistics such as standard errors and confidence bands for each individual spline term.

Default False
"copyVars":"ALL" | "ALL_MODEL" | "ALL_NUMERIC" | ["variable-name-1" <, "variable-name-2", ...>]

specifies a list of one or more variables to be copied from the input table to the output table. You can alternatively specify the value ALL, ALL_MODEL, or ALL_NUMERIC, which respectively copies all variables, all variables used in the modeling, or all numeric variables from the input table to the output table.

"into":"string"

names the predicted response level. The default name is Into.

"intoCutpt":double

specifies the predicted event probability that determines the predicted binary response level.

Default 0.5
Range (0, 1)
"pearson":"string"

names the Pearson chi-square residual. The default name is Pearson.

Aliases resChi
pears
"pred":"string"

names the predicted value. If you do not specify any output statistics, then the predicted value is named Pred by default.

Aliases p
predicted
iLink
mean
"resid":"string"

names the residual. The default name is Resid.

Aliases residual
r
"role":"string"

identifies the training, validation, and test roles for the observations.

"xBeta":"string"

names the linear predictor. The default name is Xbeta.

Alias linp

outputTables={outputTables}

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

Alias displayOut

parmEstLevDetails="NONE" | "RAW" | "RAW_AND_FORMATTED"

specifies whether to add raw and formatted values of classification variables to the parameter estimates table.

Default RAW
NONE

does not add raw or formatted values of classification variables to the parameter estimates table.

RAW

adds raw values of classification variables to the parameter estimates table.

RAW_AND_FORMATTED

adds raw and formatted values of classification variables to the parameter estimates table.

partByFrac={partByFracStatement}

specifies the fractions of the data to be used for validation and testing.

The partByFracStatement value can be one or more of the following:

"seed":integer

specifies the seed to use in the random number generator that is used for partitioning the data.

Default 0
"test":double

randomly assigns the specified proportion of observations in the input table to the testing role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Range 0–1
"validate":double

randomly assigns the specified proportion of observations in the input table to the validation role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Alias valid
Range 0–1

partByVar={partByVarStatement}

names the variable and its values used to partition the data into training, validation, and testing roles.

Long form partByVar={"name":"variable-name"}
Shortcut form partByVar="variable-name"

The partByVarStatement value can be one or more of the following:

* "name":"variable-name"

names the variable in the input table whose values are used to assign roles to each observation.

"test":"string"

specifies the formatted value of the variable that is used to assign observations to the testing role.

"train":"string"

specifies the formatted value of the variable that is used to assign observations to the training role. If you do not specify the train parameter, then all observations whose roles are not determined by the test and validate parameters are assigned to training.

"validate":"string"

specifies the formatted value of the variable that is used to assign observations to the validation role.

Alias valid

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

selection={gamselSelect}

specifies the method and options for performing model selection.

Long form selection={"method":"BOOSTING" | "SHRINKAGE"}
Shortcut form selection="BOOSTING" | "SHRINKAGE"

The gamselSelect value can be one or more of the following:

"admmAbsEps":double

specifies the absolute convergence tolerance for the alternating direction method of multipliers (ADMM) algorithm.

Alias absEps
Default 1E-06
Minimum value (exclusive) 0
"admmExactRidge":True | False

when set to True, requests the exact ridge solution in the ADMM algorithm.

Aliases admmRidge
ridge
Default False
"admmMaxIter":integer

specifies the maximum number of ADMM iterations.

Default 10000
Minimum value 0
"admmRelEps":double

specifies the relative convergence tolerance for the ADMM algorithm.

Alias relEps
Default 0.0001
Minimum value (exclusive) 0
"admmRho":double

specifies the penalty parameter for the ADMM algorithm.

Alias rho
Minimum value (exclusive) 0
"admmRhoAdaptive":True | False

when set to True, requests the adaptive penalty parameter for the ADMM algorithm.

Aliases admmAdaptiveRho
adaptiveRho
Default True
"boostLinpInMem":integer

specifies the maximum number of observations for which the boosting selection method stores the linear predictor values in memory when you are training the model.

Alias boostXBetaInMem
Default 500000
Minimum value 0
"boostMaxIter":integer

specifies the maximum number of selection steps to perform.

Alias boostMaxSteps
Minimum value 1
"boostStepSize":double

specifies the step size for the boosting algorithm.

Alias boostLearningRate
Default 0.1
Range (0, 1)
"choose":"CV" | "VALIDATE"

specifies the criterion for choosing the model. The specified criterion is evaluated at each step of the selection process, and the model that yields the best value of the criterion is chosen.

CV

specifies k-fold cross validation of the average square error.

VALIDATE

specifies the average square error for the validation data.

"cvMethod":{gamselCVMethod}

specifies the method to use for partitioning the data into folds for cross validation.

The gamselCVMethod value can be one or more of the following:

"index":"variable-name"

names the variable to use for partitioning the data into folds for cross validation.

"k":integer

specifies the number of partition folds in the random cross validation process.

Alias kfold
Minimum value 2
"distributedSearch":True | False

when set to True, uses the distributed algorithm to evaluate different regularization parameters.

Default True
"glmMaxIter":integer

specifies the maximum number of likelihood estimation iterations.

Default 500
Minimum value 0
"l1":double

specifies the regularization parameter for spline components.

Alias lambda1
Minimum value 0
"l2":double

specifies the regularization parameter for nonlinear trends of spline components.

Alias lambda2
Minimum value 0
"l3":double

specifies the generalized ridge regularization parameter for nonlinear trends of spline components.

Alias lambda3
Default 0
Minimum value 0
"maxL1":double

specifies the maximum regularization parameter for spline components.

Alias maxLambda1
Minimum value 0
"maxL2":double

specifies the maximum regularization parameter for nonlinear trends of spline components.

Alias maxLambda2
Minimum value 0
"maxL3":double

specifies the maximum ridge regularization parameter for nonlinear trends of spline components.

Alias maxLambda3
Minimum value 0
"method":"BOOSTING" | "SHRINKAGE"

specifies the model selection method.

Default BOOSTING
"numL1":integer

specifies the number of regularization parameter candidates for spline components.

Alias numLambda1
Default 20
Minimum value 0
"numL2":integer

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda2
Default 10
Minimum value 0
"numL3":integer

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda3
Default 10
Minimum value 0
"rhoL1":double

specifies the number of regularization parameter candidates for spline components.

Alias rhoLambda1
Default 0.8
Range (0, 1)
"rhoL2":double

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda2
Default 0.5
Range (0, 1)
"rhoL3":double

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda3
Default 0.5
Range (0, 1)
"stopHorizon":integer

specifies the number of consecutive steps at which the stop criterion must worsen in order for a local extremum to be detected.

Minimum value 0
"stopTolerance":double

specifies the relative change tolerance for evaluating the early stopping criterion.

Alias stopTol
Minimum value 0

singChol=double

specifies the singularity criterion in Cholesky decomposition and matrix inversion operations.

Default 1E-12
Range 0–1

singular=double

specifies the singularity criterion in truncated eigendecomposition to determine its convergence.

Default 1E-12
Range 0–1

store={casouttablebasic}

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

For more information about specifying the store parameter, see the common casouttablebasic parameter (Appendix A: Common Parameters).

Aliases savemodel
save
savestate

* table={castable}

specifies the input data table.

For more information about specifying the table parameter, see the common castable (Form 1) parameter (Appendix A: Common Parameters).

weight="variable-name"

names the numeric variable to use to perform a weighted analysis of the data.

gamSelect Action

Performs generalized additive model building.

R Syntax

results <– cas.gam.gamSelect(s,
attributes=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
class=list( list(
countMissing=TRUE | FALSE,
descending=TRUE | FALSE,
ignoreMissing=TRUE | FALSE,
levelizeRaw=TRUE | FALSE,
maxLev=integer,
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
ref="FIRST" | "LAST" | double | "string",
required parameter vars=list("variable-name-1" <, "variable-name-2", ...>)
) <, list(...)>),
classGlobalOpts=list(
countMissing=TRUE | FALSE,
descending=TRUE | FALSE,
ignoreMissing=TRUE | FALSE,
levelizeRaw=TRUE | FALSE,
maxLev=integer,
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL",
param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE",
ref="FIRST" | "LAST" | double | "string"
),
display=list(
caseSensitive=TRUE | FALSE,
exclude=TRUE | FALSE,
excludeAll=TRUE | FALSE,
keyIsPath=TRUE | FALSE,
names=list("string-1" <, "string-2", ...>),
pathType="LABEL" | "NAME",
traceNames=TRUE | FALSE
),
freq="variable-name",
itDetails=TRUE | FALSE,
maxNameLen=integer | "MAX" | "MIN" | "SASV9",
required parameter model=list(
allObs=TRUE | FALSE,
depVars=list( list(
name="variable-name",
options=list(modelopts)
) <, list(...)>),
dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON",
effects=list( list(
interaction="BAR" | "CROSS" | "NONE",
maxInteract=integer,
nest=list("string-1" <, "string-2", ...>),
required parameter vars=list("string-1" <, "string-2", ...>)
) <, list(...)>),
initialPhi=double,
link="CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
maxPhi=double,
minPhi=double,
offset="variable-name",
phi=double,
splines=list( list(
degree=integer,
details_knots=TRUE | FALSE,
details_penalty=TRUE | FALSE,
details_summary=TRUE | FALSE,
df=double,
diffOrder=integer,
knots=integer | list(double-1 <, double-2, ...>),
lowerExteriorKnots=list(double-1 <, double-2, ...>),
maxKnots=integer,
smooth=double,
upperExteriorKnots=list(double-1 <, double-2, ...>),
required parameter vars=list("variable-name-1" <, "variable-name-2", ...>),
weight1=double,
weight2=double
) <, list(...)>),
trial="variable-name"
),
output=list(
required parameter casOut=list(
caslib="string"
compress=TRUE | FALSE
indexVars=list("variable-name-1" <, "variable-name-2", ...>)
label="string"
lifetime=64-bit-integer
maxMemSize=64-bit-integer
memoryFormat="DVR" | "INHERIT" | "STANDARD"
name="table-name"
promote=TRUE | FALSE
replace=TRUE | FALSE
replication=integer
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE"
threadBlockSize=64-bit-integer
timeStamp="string"
where=list("string-1" <, "string-2", ...>)
),
component=TRUE | FALSE,
copyVars="ALL" | "ALL_MODEL" | "ALL_NUMERIC" | list("variable-name-1" <, "variable-name-2", ...>),
into="string",
intoCutpt=double,
pearson="string",
pred="string",
resid="string",
role="string",
xBeta="string"
),
outputTables=list(
groupByVarsRaw=TRUE | FALSE,
includeAll=TRUE | FALSE,
names=list("string-1" <, "string-2", ...>) | list(key-1=list(casouttable-1) <, key-2=list(casouttable-2), ...>),
repeated=TRUE | FALSE,
replace=TRUE | FALSE
),
partByFrac=list(
seed=integer,
test=double,
validate=double
),
partByVar=list(
required parameter name="variable-name",
test="string",
train="string",
validate="string"
),
seed=64-bit-integer,
selection=list(
admmAbsEps=double,
admmExactRidge=TRUE | FALSE,
admmMaxIter=integer,
admmRelEps=double,
admmRho=double,
admmRhoAdaptive=TRUE | FALSE,
boostLinpInMem=integer,
boostMaxIter=integer,
boostStepSize=double,
cvMethod=list(
index="variable-name"
k=integer
),
distributedSearch=TRUE | FALSE,
glmMaxIter=integer,
l1=double,
l2=double,
l3=double,
maxL1=double,
maxL2=double,
maxL3=double,
method="BOOSTING" | "SHRINKAGE",
numL1=integer,
numL2=integer,
numL3=integer,
rhoL1=double,
rhoL2=double,
rhoL3=double,
stopHorizon=integer,
),
singChol=double,
singular=double,
store=list(
caslib="string",
indexVars=list("variable-name-1" <, "variable-name-2", ...>),
label="string",
lifetime=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE"
),
required parameter table=list(
caslib="string",
computedOnDemand=TRUE | FALSE,
computedVars=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
computedVarsProgram="string",
dataSourceOptions=list(key-1=list(any-list-or-data-type-1) <, key-2=list(any-list-or-data-type-2), ...>),
groupBy=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
groupByMode="NOSORT" | "REDISTRIBUTE",
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters),
required parameter name="table-name",
orderBy=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
singlePass=TRUE | FALSE,
vars=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
where="where-expression",
whereTable=list(
casLib="string"
dataSourceOptions=list(adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters)
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters)
required parameter name="table-name"
vars=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>)
where="where-expression"
)
),
weight="variable-name"
)
indicates a required parameter

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

required parametertable

specifies the input data table.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 output

required parametercasOut

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

 store

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

Parameter Descriptions

attributes=list( list(casinvardesc-1) <, list(casinvardesc-2), ...>)

changes the attributes of variables used in this action. Currently, attributes specified on the inputs and nominals parameter are ignored.

For more information about specifying the attributes parameter, see the common casinvardesc parameter (Appendix A: Common Parameters).

Alias attribute

class=list( list(classStatement-1) <, list(classStatement-2), ...>)

names the classification variables to use as explanatory variables in the analysis.

The classStatement value can be one or more of the following:

countMissing=TRUE | FALSE

when set to True, treats missing as a valid level for this variable.

Default FALSE
descending=TRUE | FALSE

when set to True, reverses the sort order that is imposed by the order parameter.

Default FALSE
ignoreMissing=TRUE | FALSE

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default FALSE
levelizeRaw=TRUE | FALSE

when set to True, bases levelization for this variable on raw values.

Default FALSE
maxLev=integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

ref="FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

* vars=list("variable-name-1" <, "variable-name-2", ...>)

specifies the classification variables.

Alias name

classGlobalOpts=list(classopts)

lists options that apply to all classification variables.

Long form classGlobalOpts=list(param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE")
Shortcut form classGlobalOpts="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

The classopts value can be one or more of the following:

countMissing=TRUE | FALSE

when set to True, treats missing as a valid level for this variable.

Default FALSE
descending=TRUE | FALSE

when set to True, reverses the sort order that is imposed by the order parameter.

Default FALSE
ignoreMissing=TRUE | FALSE

when set to True, ignores the fact that some variables in the observation have missing values and honors the nonmissing values for other variables in that observation.

Default FALSE
levelizeRaw=TRUE | FALSE

when set to True, bases levelization for this variable on raw values.

Default FALSE
maxLev=integer

specifies the maximum number of levels. A value of 0 means an unlimited number of levels.

Default 0
Minimum value 0
order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the classification variable. This ordering determines which parameters in the model correspond to each level in the data.

For more information, see the description of the order subparameter in the class parameter (Shared Concepts).

param="BTH" | "EFFECT" | "GLM" | "ORDINAL" | "ORTHBTH" | "ORTHEFFECT" | "ORTHORDINAL" | "ORTHPOLY" | "ORTHREF" | "POLYNOMIAL" | "REFERENCE"

specifies the parameterization method for the classification variable or variables. The default is GLM when none of the variables specified in the vars parameter includes a param parameter; otherwise, the default is REFERENCE.

For more information, see the description of the param subparameter in the class parameter (Shared Concepts).

ref="FIRST" | "LAST" | double | "string"

specifies the reference level to use when you specify a nonsingular parameterization in the param parameter. For an individual variable, you can specify the level of the variable to use as the reference level. If the action supports the global class options parameter, then you can specify FIRST or LAST.

display=list(displayTables)

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

freq="variable-name"

names the numeric variable that contains the frequency of occurrence for each observation.

itDetails=TRUE | FALSE

when set to True, request an iteration history table about the selection process.

Default FALSE

maxNameLen=integer | "MAX" | "MIN" | "SASV9"

specifies the maximum name length for new columns in any output data table that is created on the CAS server.

Alias maxNameLength
Default 32
MAX sets the maximum name length to the maximum integer.
MIN sets the maximum name length to 20.
SASV9 sets the maximum name length to 32 (which is the maximum valid name length in SAS version 9).

* model=list(gamselmodel)

names the dependent variable, parametric effects, spline effects, and model options.

The gamselmodel value can be one or more of the following:

allObs=TRUE | FALSE

when set to True, constructs a spline by including observations from training, validation, and test data.

Default FALSE
depVars=list( list(responsevar-1) <, list(responsevar-2), ...>)

specifies one or more variables to use as response variables in the model. Not all models support more than one response variable.

Aliases depVar
target

The responsevar value can be one or more of the following:

name="variable-name"

names the response variable.

options=list(modelopts)

specifies a list of parameters for the response variable.

The modelopts value can be one or more of the following:

descending=TRUE | FALSE

when set to True, reverses the sort order of the response categories. When the descending parameter is set to True and a value is specified for the order parameter, the action orders the response categories according to the requested order and then reverses that order.

Default FALSE
event="FIRST" | "LAST" | double | "string"

specifies the event category for the binary response model. FIRST and LAST refer to the first and last ordered value of the response, respectively.

order="FORMATTED" | "FREQ" | "FREQFORMATTED" | "FREQINTERNAL" | "INTERNAL"

specifies the sort order for the levels of the response variable. This ordering determines which parameters in the model correspond to each level in the data.

ref="FIRST" | "LAST" | double | "string"

specifies the reference level that is used for the response variable. Valid parameter values are a quoted string that specifies a valid level for the response variable or FIRST or LAST. FIRST and LAST refer to the first and last ordered value of the variable, respectively.

dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "POISSON"

specifies the response distribution for the model.

effects=list( list(effect-1) <, list(effect-2), ...>)

specifies a list of effects that define the model. Each term in this list is made up of variables specified in the vars parameter and their interaction (which can be NONE, CROSS, or BAR). When the interaction is BAR, it can be limited by the maxInteract parameter.

The effect value can be one or more of the following:

interaction="BAR" | "CROSS" | "NONE"

specifies the type of interaction for the variables.

Alias interact
Default NONE
maxInteract=integer

eliminates interaction effects whose order is higher than the specified integer value when used in conjunction with the BAR interaction.

nest=list("string-1" <, "string-2", ...>)

specifies the variables to be nested within the term that is defined by the vars parameter. For terms with a BAR or CROSS interaction, the nest corresponds to the last variable in the vars parameter. For terms with no interaction, the nest is distributed across all variables that are listed in the vars parameter.

* vars=list("string-1" <, "string-2", ...>)

specifies the variables to use in defining a term of the effect. You must specify at least one variable.

initialPhi=double

specifies the initial dispersion parameter.

Minimum value 0

specifies the link function for the model.

maxPhi=double

specifies the maximum dispersion parameter.

Minimum value (exclusive) 0
minPhi=double

specifies the minimum dispersion parameter.

Minimum value 0
offset="variable-name"

specifies a numeric offset variable. This variable cannot be a classification variable, a response variable, or one of the explanatory variables.

phi=double

specifies the fixed dispersion parameter.

Alias dispersion
Minimum value 0
splines=list( list(gamselSplineTerm-1) <, list(gamselSplineTerm-2), ...>)

names the spline effects to use in the generalized additive models.

The gamselSplineTerm value can be one or more of the following:

degree=integer

specifies the degree of the spline transformation.

Alias m
Minimum value 1
details_knots=TRUE | FALSE

when set to True, displays knot values for a spline term.

Default FALSE
details_penalty=TRUE | FALSE

when set to True, displays the penalty matrix for a spline term.

Default FALSE
details_summary=TRUE | FALSE

when set to True, displays detailed spline construction parameters.

Default FALSE
df=double

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
diffOrder=integer

specifies the order of the difference penalty for a B-spline.

Default 2
Range 0–10
knots=integer | list(double-1 <, double-2, ...>)

specifies a list of knot values to use for a spline term.

lowerExteriorKnots=list(double-1 <, double-2, ...>)

specifies the lower exterior knots for a spline term.

maxKnots=integer

specifies the maximum number of knots for a spline term.

Minimum value 1
smooth=double

specifies the fixed smoothing parameter for a spline term.

Minimum value 0
upperExteriorKnots=list(double-1 <, double-2, ...>)

specifies the upper exterior knots for a spline term.

* vars=list("variable-name-1" <, "variable-name-2", ...>)

specifies the variables to use in a spline term.

weight1=double

specifies the sparsity penalty strength.

Alias wt1
Default 1
Minimum value 0
weight2=double

specifies the smoothness penalty strength.

Alias wt2
Default 1
Minimum value 0
trial="variable-name"

specifies a positive numeric variable that is the number of trials. When you specify a trial variable, the response variable is called the events variable and it must contain the number of positive responses (or events).

nClassLevelsPrint=integer

limits the display of class levels. The value 0 suppresses all levels.

Minimum value 0

output=list(gamselOutputStatement)

creates a table on the server that contains observationwise statistics, which are computed after the model is fit.

The gamselOutputStatement value can be one or more of the following:

* casOut=list(casouttable)

specifies the settings for an output table.

For more information about specifying the casOut parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

component=TRUE | FALSE

when set to True, requests componentwise statistics such as standard errors and confidence bands for each individual spline term.

Default FALSE
copyVars="ALL" | "ALL_MODEL" | "ALL_NUMERIC" | list("variable-name-1" <, "variable-name-2", ...>)

specifies a list of one or more variables to be copied from the input table to the output table. You can alternatively specify the value ALL, ALL_MODEL, or ALL_NUMERIC, which respectively copies all variables, all variables used in the modeling, or all numeric variables from the input table to the output table.

into="string"

names the predicted response level. The default name is Into.

intoCutpt=double

specifies the predicted event probability that determines the predicted binary response level.

Default 0.5
Range (0, 1)
pearson="string"

names the Pearson chi-square residual. The default name is Pearson.

Aliases resChi
pears
pred="string"

names the predicted value. If you do not specify any output statistics, then the predicted value is named Pred by default.

Aliases p
predicted
iLink
mean
resid="string"

names the residual. The default name is Resid.

Aliases residual
r
role="string"

identifies the training, validation, and test roles for the observations.

xBeta="string"

names the linear predictor. The default name is Xbeta.

Alias linp

outputTables=list(outputTables)

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

Alias displayOut

parmEstLevDetails="NONE" | "RAW" | "RAW_AND_FORMATTED"

specifies whether to add raw and formatted values of classification variables to the parameter estimates table.

Default RAW
NONE

does not add raw or formatted values of classification variables to the parameter estimates table.

RAW

adds raw values of classification variables to the parameter estimates table.

RAW_AND_FORMATTED

adds raw and formatted values of classification variables to the parameter estimates table.

partByFrac=list(partByFracStatement)

specifies the fractions of the data to be used for validation and testing.

The partByFracStatement value can be one or more of the following:

seed=integer

specifies the seed to use in the random number generator that is used for partitioning the data.

Default 0
test=double

randomly assigns the specified proportion of observations in the input table to the testing role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Range 0–1
validate=double

randomly assigns the specified proportion of observations in the input table to the validation role. The sum of the fractions that are specified in the test and validate parameters must be less than 1.

Alias valid
Range 0–1

partByVar=list(partByVarStatement)

names the variable and its values used to partition the data into training, validation, and testing roles.

Long form partByVar=list(name="variable-name")
Shortcut form partByVar="variable-name"

The partByVarStatement value can be one or more of the following:

* name="variable-name"

names the variable in the input table whose values are used to assign roles to each observation.

test="string"

specifies the formatted value of the variable that is used to assign observations to the testing role.

train="string"

specifies the formatted value of the variable that is used to assign observations to the training role. If you do not specify the train parameter, then all observations whose roles are not determined by the test and validate parameters are assigned to training.

validate="string"

specifies the formatted value of the variable that is used to assign observations to the validation role.

Alias valid

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

selection=list(gamselSelect)

specifies the method and options for performing model selection.

Long form selection=list(method="BOOSTING" | "SHRINKAGE")
Shortcut form selection="BOOSTING" | "SHRINKAGE"

The gamselSelect value can be one or more of the following:

admmAbsEps=double

specifies the absolute convergence tolerance for the alternating direction method of multipliers (ADMM) algorithm.

Alias absEps
Default 1E-06
Minimum value (exclusive) 0
admmExactRidge=TRUE | FALSE

when set to True, requests the exact ridge solution in the ADMM algorithm.

Aliases admmRidge
ridge
Default FALSE
admmMaxIter=integer

specifies the maximum number of ADMM iterations.

Default 10000
Minimum value 0
admmRelEps=double

specifies the relative convergence tolerance for the ADMM algorithm.

Alias relEps
Default 0.0001
Minimum value (exclusive) 0
admmRho=double

specifies the penalty parameter for the ADMM algorithm.

Alias rho
Minimum value (exclusive) 0
admmRhoAdaptive=TRUE | FALSE

when set to True, requests the adaptive penalty parameter for the ADMM algorithm.

Aliases admmAdaptiveRho
adaptiveRho
Default TRUE
boostLinpInMem=integer

specifies the maximum number of observations for which the boosting selection method stores the linear predictor values in memory when you are training the model.

Alias boostXBetaInMem
Default 500000
Minimum value 0
boostMaxIter=integer

specifies the maximum number of selection steps to perform.

Alias boostMaxSteps
Minimum value 1
boostStepSize=double

specifies the step size for the boosting algorithm.

Alias boostLearningRate
Default 0.1
Range (0, 1)
choose="CV" | "VALIDATE"

specifies the criterion for choosing the model. The specified criterion is evaluated at each step of the selection process, and the model that yields the best value of the criterion is chosen.

CV

specifies k-fold cross validation of the average square error.

VALIDATE

specifies the average square error for the validation data.

cvMethod=list(gamselCVMethod)

specifies the method to use for partitioning the data into folds for cross validation.

The gamselCVMethod value can be one or more of the following:

index="variable-name"

names the variable to use for partitioning the data into folds for cross validation.

k=integer

specifies the number of partition folds in the random cross validation process.

Alias kfold
Minimum value 2
distributedSearch=TRUE | FALSE

when set to True, uses the distributed algorithm to evaluate different regularization parameters.

Default TRUE
glmMaxIter=integer

specifies the maximum number of likelihood estimation iterations.

Default 500
Minimum value 0
l1=double

specifies the regularization parameter for spline components.

Alias lambda1
Minimum value 0
l2=double

specifies the regularization parameter for nonlinear trends of spline components.

Alias lambda2
Minimum value 0
l3=double

specifies the generalized ridge regularization parameter for nonlinear trends of spline components.

Alias lambda3
Default 0
Minimum value 0
maxL1=double

specifies the maximum regularization parameter for spline components.

Alias maxLambda1
Minimum value 0
maxL2=double

specifies the maximum regularization parameter for nonlinear trends of spline components.

Alias maxLambda2
Minimum value 0
maxL3=double

specifies the maximum ridge regularization parameter for nonlinear trends of spline components.

Alias maxLambda3
Minimum value 0
method="BOOSTING" | "SHRINKAGE"

specifies the model selection method.

Default BOOSTING
numL1=integer

specifies the number of regularization parameter candidates for spline components.

Alias numLambda1
Default 20
Minimum value 0
numL2=integer

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda2
Default 10
Minimum value 0
numL3=integer

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias numLambda3
Default 10
Minimum value 0
rhoL1=double

specifies the number of regularization parameter candidates for spline components.

Alias rhoLambda1
Default 0.8
Range (0, 1)
rhoL2=double

specifies the number of regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda2
Default 0.5
Range (0, 1)
rhoL3=double

specifies the number of ridge regularization parameter candidates for nonlinear trends of spline components.

Alias rhoLambda3
Default 0.5
Range (0, 1)
stopHorizon=integer

specifies the number of consecutive steps at which the stop criterion must worsen in order for a local extremum to be detected.

Minimum value 0
stopTolerance=double

specifies the relative change tolerance for evaluating the early stopping criterion.

Alias stopTol
Minimum value 0

singChol=double

specifies the singularity criterion in Cholesky decomposition and matrix inversion operations.

Default 1E-12
Range 0–1

singular=double

specifies the singularity criterion in truncated eigendecomposition to determine its convergence.

Default 1E-12
Range 0–1

store=list(casouttablebasic)

creates a binary table object on the server that contains model fit information so that you can use it later for scoring.

For more information about specifying the store parameter, see the common casouttablebasic parameter (Appendix A: Common Parameters).

Aliases savemodel
save
savestate

* table=list(castable)

specifies the input data table.

For more information about specifying the table parameter, see the common castable (Form 1) parameter (Appendix A: Common Parameters).

weight="variable-name"

names the numeric variable to use to perform a weighted analysis of the data.

Last updated: March 05, 2026