Generalized Additive Models Action Set

Provides actions for fitting Generalized Additive Models

gampl Action

Fits generalized additive models by penalized likelihood.

CASL Syntax

gam.gampl <result=results> <status=rc> /
alpha=double,
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,
critFactor=double,
depVars={{
name="variable-name",
options={modelopts}
}, {...}},
dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE",
effects={{
interaction="BAR" | "CROSS" | "NONE",
maxInteract=integer,
nest={"string-1" <, "string-2", ...>},
required parameter vars={"string-1" <, "string-2", ...>}
}, {...}},
fdHessian=TRUE | FALSE,
initialPhi=double,
link="CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
maxPhi=double,
minPhi=double,
normalize=TRUE | FALSE,
offset="variable-name",
phi=double,
ridge=double,
splines={{
details_knots=TRUE | FALSE,
details_penalty=TRUE | FALSE,
details_summary=TRUE | FALSE,
df=integer,
initSmooth=double,
knots=integer | {double-1 <, double-2, ...>},
m=integer,
maxDf=integer,
maxKnots=integer,
maxSmooth=double,
minSmooth=double,
smooth=double,
required parameter vars={"variable-name-1" <, "variable-name-2", ...>}
}, {...}},
trial="variable-name",
tweedieOffset=double,
tweedieP=double
},
noPrint=TRUE | FALSE,
output={
alpha=double,
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,
lower="string",
pearson="string",
pred="string",
resid="string",
std="string",
upper="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
},
plikeOpts={
absConv=double,
absFConv=double,
absFConv_n=integer,
absGConv=double,
absGConv_n=integer,
fConv=double,
fConv_n=integer,
gConv=double,
gConv_n=integer,
maxFunc=double,
maxIter=double,
maxTime=double,
minIter=integer,
},
seed=64-bit-integer,
singChol=double,
singular=double,
smoothOpts={
absConv=double,
absFConv=double,
absFConv_n=integer,
absGConv=double,
absGConv_n=integer,
fConv=double,
fConv_n=integer,
gConv=double,
gConv_n=integer,
maxFunc=double,
maxIter=double,
maxTime=double,
minIter=integer,
},
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

alpha=double

specifies the significance level to use for hypothesis testing of regression parameters and spline effects, and for the construction of all confidence bands.

Default 0.05
Range (0, 1)

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, requests an iteration history table for smoothing parameters or for regression parameters when fixed smoothing parameters are specified.

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={gamplmodel}

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

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

allObs=TRUE | FALSE

when set to True, constructs a spline by including all observations that do not have a missing value for any variable that is specified in that spline.

Default FALSE
criterion="DEFAULT" | "GACV" | "GCV" | "UBRE"

specifies the model fitting criterion to optimize.

DEFAULT

uses a model evaluation criterion based on the specified distribution.

GACV

uses the GACV criterion for model evaluation.

GCV

uses the GCV criterion for model evaluation.

UBRE

uses the UBRE criterion for model evaluation.

critFactor=double

adjusts the model fitting criterion for optimization.

Default 1
Minimum value 1
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" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE"

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.

fdHessian=TRUE | FALSE

when set to True, uses the finite difference Hessian for optimization.

Default FALSE
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
method="OUTER" | "PERFORMANCE"

specifies the model fitting algorithm.

Default PERFORMANCE
OUTER

uses the outer iteration method to search an optimal model.

PERFORMANCE

uses the performance iteration method to search an optimal model.

minPhi=double

specifies the minimum dispersion parameter.

Minimum value 0
normalize=TRUE | FALSE

when set to True, requests normalized spline basis functions for model fitting.

Default FALSE
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
ridge=double

specifies the ridge parameter.

Default 0
Range 0–1
scale="DEVIANCE" | "MLE" | "PEARSON"

specifies the fitting method for the dispersion parameter.

Default MLE
DEVIANCE

uses the deviance statistic to estimate the dispersion parameter.

MLE

uses the maximum likelihood to estimate the dispersion parameter.

PEARSON

uses the Pearson's statistic to estimate the dispersion parameter.

splines={{splineTerm-1} <, {splineTerm-2}, ...>}

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

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

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=integer

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
initSmooth=double

specifies the initial smoothing parameter for a spline term.

Minimum value 0
knots=integer | {double-1 <, double-2, ...>}

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

m=integer

specifies the order of the derivative in the smoothness penalty for a spline term.

Minimum value 1
maxDf=integer

specifies the maximum degrees of freedom for a spline term.

Minimum value 1
maxKnots=integer

specifies the maximum number of knots for a spline term.

Default 2000
Minimum value 1
maxSmooth=double

specifies the maximum smoothing parameter for a spline term.

Minimum value 0
minSmooth=double

specifies the minimum smoothing parameter for a spline term.

Minimum value 0
smooth=double

specifies the fixed smoothing parameter for a spline term.

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

specifies the variables to use in a spline term.

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).

tweedieInitialP=double

specifies the initial power parameter for the Tweedie distribution.

Minimum value 1
tweedieOffset=double

specifies a constant to be added to the response for evaluating the quasi-likelihood for the Tweedie distribution.

Minimum value 0
tweedieP=double

specifies the fixed power parameter for the Tweedie distribution.

Minimum value 1

nClassLevelsPrint=integer

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

Minimum value 0

noPrint=TRUE | FALSE

when set to True, suppresses all output.

Default FALSE

output={gamplOutputStatement}

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

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

alpha=double

specifies the significance level to use for the construction of all confidence bands.

Range (0, 1)
* 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)
lower="string"

names the lower Bayesian confidence band for the predicted value. The default name is Lower.

Aliases lclm
lowerMean
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
std="string"

names the standard error of the linear predictor. The default name is Std.

upper="string"

names the upper Bayesian confidence band for the predicted value. The default name is Upper.

Aliases uclm
upperMean
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.

plikeOpts={optimspecs}

specifies optimization parameters for maximum (penalized) likelihood estimation.

Long form plikeOpts={technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"}
Shortcut form plikeOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

absConv=double

specifies the absolute function convergence criterion.

Alias abstol
absFConv=double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
absFConv_n=integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
absGConv=double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
absGConv_n=integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
fConv=double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
fConv_n=integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
gConv=double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
gConv_n=integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
maxFunc=double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
maxIter=double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
maxTime=double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
minIter=integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

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

smoothOpts={optimspecs}

specifies optimization parameters for smoothing parameter optimization.

Long form smoothOpts={technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"}
Shortcut form smoothOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

absConv=double

specifies the absolute function convergence criterion.

Alias abstol
absFConv=double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
absFConv_n=integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
absGConv=double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
absGConv_n=integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
fConv=double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
fConv_n=integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
gConv=double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
gConv_n=integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
maxFunc=double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
maxIter=double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
maxTime=double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
minIter=integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

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.

gampl Action

Fits generalized additive models by penalized likelihood.

Lua Syntax

results, info = s:gam_gampl{
alpha=double,
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,
critFactor=double,
depVars={{
name="variable-name",
options={modelopts}
}, {...}},
dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE",
effects={{
interaction="BAR" | "CROSS" | "NONE",
maxInteract=integer,
nest={"string-1" <, "string-2", ...>},
required parameter vars={"string-1" <, "string-2", ...>}
}, {...}},
fdHessian=true | false,
initialPhi=double,
link="CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
maxPhi=double,
minPhi=double,
normalize=true | false,
offset="variable-name",
phi=double,
ridge=double,
splines={{
details_knots=true | false,
details_penalty=true | false,
details_summary=true | false,
df=integer,
initSmooth=double,
knots=integer | {double-1 <, double-2, ...>},
m=integer,
maxDf=integer,
maxKnots=integer,
maxSmooth=double,
minSmooth=double,
smooth=double,
required parameter vars={"variable-name-1" <, "variable-name-2", ...>}
}, {...}},
trial="variable-name",
tweedieOffset=double,
tweedieP=double
},
noPrint=true | false,
output={
alpha=double,
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,
lower="string",
pearson="string",
pred="string",
resid="string",
std="string",
upper="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
},
plikeOpts={
absConv=double,
absFConv=double,
absFConv_n=integer,
absGConv=double,
absGConv_n=integer,
fConv=double,
fConv_n=integer,
gConv=double,
gConv_n=integer,
maxFunc=double,
maxIter=double,
maxTime=double,
minIter=integer,
},
seed=64-bit-integer,
singChol=double,
singular=double,
smoothOpts={
absConv=double,
absFConv=double,
absFConv_n=integer,
absGConv=double,
absGConv_n=integer,
fConv=double,
fConv_n=integer,
gConv=double,
gConv_n=integer,
maxFunc=double,
maxIter=double,
maxTime=double,
minIter=integer,
},
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

alpha=double

specifies the significance level to use for hypothesis testing of regression parameters and spline effects, and for the construction of all confidence bands.

Default 0.05
Range (0, 1)

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, requests an iteration history table for smoothing parameters or for regression parameters when fixed smoothing parameters are specified.

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={gamplmodel}

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

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

allObs=true | false

when set to True, constructs a spline by including all observations that do not have a missing value for any variable that is specified in that spline.

Default false
criterion="DEFAULT" | "GACV" | "GCV" | "UBRE"

specifies the model fitting criterion to optimize.

DEFAULT

uses a model evaluation criterion based on the specified distribution.

GACV

uses the GACV criterion for model evaluation.

GCV

uses the GCV criterion for model evaluation.

UBRE

uses the UBRE criterion for model evaluation.

critFactor=double

adjusts the model fitting criterion for optimization.

Default 1
Minimum value 1
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" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE"

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.

fdHessian=true | false

when set to True, uses the finite difference Hessian for optimization.

Default false
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
method="OUTER" | "PERFORMANCE"

specifies the model fitting algorithm.

Default PERFORMANCE
OUTER

uses the outer iteration method to search an optimal model.

PERFORMANCE

uses the performance iteration method to search an optimal model.

minPhi=double

specifies the minimum dispersion parameter.

Minimum value 0
normalize=true | false

when set to True, requests normalized spline basis functions for model fitting.

Default false
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
ridge=double

specifies the ridge parameter.

Default 0
Range 0–1
scale="DEVIANCE" | "MLE" | "PEARSON"

specifies the fitting method for the dispersion parameter.

Default MLE
DEVIANCE

uses the deviance statistic to estimate the dispersion parameter.

MLE

uses the maximum likelihood to estimate the dispersion parameter.

PEARSON

uses the Pearson's statistic to estimate the dispersion parameter.

splines={{splineTerm-1} <, {splineTerm-2}, ...>}

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

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

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=integer

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
initSmooth=double

specifies the initial smoothing parameter for a spline term.

Minimum value 0
knots=integer | {double-1 <, double-2, ...>}

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

m=integer

specifies the order of the derivative in the smoothness penalty for a spline term.

Minimum value 1
maxDf=integer

specifies the maximum degrees of freedom for a spline term.

Minimum value 1
maxKnots=integer

specifies the maximum number of knots for a spline term.

Default 2000
Minimum value 1
maxSmooth=double

specifies the maximum smoothing parameter for a spline term.

Minimum value 0
minSmooth=double

specifies the minimum smoothing parameter for a spline term.

Minimum value 0
smooth=double

specifies the fixed smoothing parameter for a spline term.

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

specifies the variables to use in a spline term.

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).

tweedieInitialP=double

specifies the initial power parameter for the Tweedie distribution.

Minimum value 1
tweedieOffset=double

specifies a constant to be added to the response for evaluating the quasi-likelihood for the Tweedie distribution.

Minimum value 0
tweedieP=double

specifies the fixed power parameter for the Tweedie distribution.

Minimum value 1

nClassLevelsPrint=integer

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

Minimum value 0

noPrint=true | false

when set to True, suppresses all output.

Default false

output={gamplOutputStatement}

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

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

alpha=double

specifies the significance level to use for the construction of all confidence bands.

Range (0, 1)
* 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)
lower="string"

names the lower Bayesian confidence band for the predicted value. The default name is Lower.

Aliases lclm
lowerMean
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
std="string"

names the standard error of the linear predictor. The default name is Std.

upper="string"

names the upper Bayesian confidence band for the predicted value. The default name is Upper.

Aliases uclm
upperMean
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.

plikeOpts={optimspecs}

specifies optimization parameters for maximum (penalized) likelihood estimation.

Long form plikeOpts={technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"}
Shortcut form plikeOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

absConv=double

specifies the absolute function convergence criterion.

Alias abstol
absFConv=double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
absFConv_n=integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
absGConv=double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
absGConv_n=integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
fConv=double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
fConv_n=integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
gConv=double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
gConv_n=integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
maxFunc=double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
maxIter=double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
maxTime=double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
minIter=integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

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

smoothOpts={optimspecs}

specifies optimization parameters for smoothing parameter optimization.

Long form smoothOpts={technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"}
Shortcut form smoothOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

absConv=double

specifies the absolute function convergence criterion.

Alias abstol
absFConv=double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
absFConv_n=integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
absGConv=double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
absGConv_n=integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
fConv=double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
fConv_n=integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
gConv=double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
gConv_n=integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
maxFunc=double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
maxIter=double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
maxTime=double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
minIter=integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

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.

gampl Action

Fits generalized additive models by penalized likelihood.

Python Syntax

results=s.gam.gampl(
alpha=double,
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,
"critFactor":double,
"depVars":[{
"name":"variable-name",
"options":{modelopts}
}<, {...}>],
"dist":"BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE",
"effects":[{
"interaction":"BAR" | "CROSS" | "NONE",
"maxInteract":integer,
"nest":["string-1" <, "string-2", ...>],
required parameter "vars":["string-1" <, "string-2", ...>]
}<, {...}>],
"fdHessian":True | False,
"initialPhi":double,
"link":"CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
"maxPhi":double,
"minPhi":double,
"normalize":True | False,
"offset":"variable-name",
"phi":double,
"ridge":double,
"splines":[{
"details_knots":True | False,
"details_penalty":True | False,
"details_summary":True | False,
"df":integer,
"initSmooth":double,
"knots":integer | [double-1 <, double-2, ...>],
"m":integer,
"maxDf":integer,
"maxKnots":integer,
"maxSmooth":double,
"minSmooth":double,
"smooth":double,
required parameter "vars":["variable-name-1" <, "variable-name-2", ...>]
}<, {...}>],
"trial":"variable-name",
"tweedieInitialP":double,
"tweedieOffset":double,
"tweedieP":double
},
noPrint=True | False,
output={
"alpha":double,
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,
"lower":"string",
"pearson":"string",
"pred":"string",
"resid":"string",
"std":"string",
"upper":"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
},
plikeOpts={
"absConv":double,
"absFConv":double,
"absFConv_n":integer,
"absGConv":double,
"absGConv_n":integer,
"fConv":double,
"fConv_n":integer,
"gConv":double,
"gConv_n":integer,
"maxFunc":double,
"maxIter":double,
"maxTime":double,
"minIter":integer,
},
seed=64-bit-integer,
singChol=double,
singular=double,
smoothOpts={
"absConv":double,
"absFConv":double,
"absFConv_n":integer,
"absGConv":double,
"absGConv_n":integer,
"fConv":double,
"fConv_n":integer,
"gConv":double,
"gConv_n":integer,
"maxFunc":double,
"maxIter":double,
"maxTime":double,
"minIter":integer,
},
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

alpha=double

specifies the significance level to use for hypothesis testing of regression parameters and spline effects, and for the construction of all confidence bands.

Default 0.05
Range (0, 1)

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, requests an iteration history table for smoothing parameters or for regression parameters when fixed smoothing parameters are specified.

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={gamplmodel}

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

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

"allObs":True | False

when set to True, constructs a spline by including all observations that do not have a missing value for any variable that is specified in that spline.

Default False
"criterion":"DEFAULT" | "GACV" | "GCV" | "UBRE"

specifies the model fitting criterion to optimize.

DEFAULT

uses a model evaluation criterion based on the specified distribution.

GACV

uses the GACV criterion for model evaluation.

GCV

uses the GCV criterion for model evaluation.

UBRE

uses the UBRE criterion for model evaluation.

"critFactor":double

adjusts the model fitting criterion for optimization.

Default 1
Minimum value 1
"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" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE"

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.

"fdHessian":True | False

when set to True, uses the finite difference Hessian for optimization.

Default False
"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
"method":"OUTER" | "PERFORMANCE"

specifies the model fitting algorithm.

Default PERFORMANCE
OUTER

uses the outer iteration method to search an optimal model.

PERFORMANCE

uses the performance iteration method to search an optimal model.

"minPhi":double

specifies the minimum dispersion parameter.

Minimum value 0
"normalize":True | False

when set to True, requests normalized spline basis functions for model fitting.

Default False
"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
"ridge":double

specifies the ridge parameter.

Default 0
Range 0–1
"scale":"DEVIANCE" | "MLE" | "PEARSON"

specifies the fitting method for the dispersion parameter.

Default MLE
DEVIANCE

uses the deviance statistic to estimate the dispersion parameter.

MLE

uses the maximum likelihood to estimate the dispersion parameter.

PEARSON

uses the Pearson's statistic to estimate the dispersion parameter.

"splines":[{splineTerm-1} <, {splineTerm-2}, ...>]

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

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

"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":integer

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
"initSmooth":double

specifies the initial smoothing parameter for a spline term.

Minimum value 0
"knots":integer | [double-1 <, double-2, ...>]

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

"m":integer

specifies the order of the derivative in the smoothness penalty for a spline term.

Minimum value 1
"maxDf":integer

specifies the maximum degrees of freedom for a spline term.

Minimum value 1
"maxKnots":integer

specifies the maximum number of knots for a spline term.

Default 2000
Minimum value 1
"maxSmooth":double

specifies the maximum smoothing parameter for a spline term.

Minimum value 0
"minSmooth":double

specifies the minimum smoothing parameter for a spline term.

Minimum value 0
"smooth":double

specifies the fixed smoothing parameter for a spline term.

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

specifies the variables to use in a spline term.

"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).

"tweedieInitialP":double

specifies the initial power parameter for the Tweedie distribution.

Minimum value 1
"tweedieOffset":double

specifies a constant to be added to the response for evaluating the quasi-likelihood for the Tweedie distribution.

Minimum value 0
"tweedieP":double

specifies the fixed power parameter for the Tweedie distribution.

Minimum value 1

nClassLevelsPrint=integer

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

Minimum value 0

noPrint=True | False

when set to True, suppresses all output.

Default False

output={gamplOutputStatement}

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

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

"alpha":double

specifies the significance level to use for the construction of all confidence bands.

Range (0, 1)
* "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)
"lower":"string"

names the lower Bayesian confidence band for the predicted value. The default name is Lower.

Aliases lclm
lowerMean
"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
"std":"string"

names the standard error of the linear predictor. The default name is Std.

"upper":"string"

names the upper Bayesian confidence band for the predicted value. The default name is Upper.

Aliases uclm
upperMean
"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.

plikeOpts={optimspecs}

specifies optimization parameters for maximum (penalized) likelihood estimation.

Long form plikeOpts={"technique":"CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"}
Shortcut form plikeOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

"absConv":double

specifies the absolute function convergence criterion.

Alias abstol
"absFConv":double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
"absFConv_n":integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
"absGConv":double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
"absGConv_n":integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
"fConv":double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
"fConv_n":integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
"gConv":double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
"gConv_n":integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
"maxFunc":double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
"maxIter":double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
"maxTime":double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
"minIter":integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
"technique":"CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

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

smoothOpts={optimspecs}

specifies optimization parameters for smoothing parameter optimization.

Long form smoothOpts={"technique":"CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"}
Shortcut form smoothOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

"absConv":double

specifies the absolute function convergence criterion.

Alias abstol
"absFConv":double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
"absFConv_n":integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
"absGConv":double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
"absGConv_n":integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
"fConv":double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
"fConv_n":integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
"gConv":double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
"gConv_n":integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
"maxFunc":double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
"maxIter":double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
"maxTime":double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
"minIter":integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
"technique":"CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

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.

gampl Action

Fits generalized additive models by penalized likelihood.

R Syntax

results <– cas.gam.gampl(s,
alpha=double,
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,
critFactor=double,
depVars=list( list(
name="variable-name",
options=list(modelopts)
) <, list(...)>),
dist="BERNOULLI" | "BINOMIAL" | "GAMMA" | "GAUSSIAN" | "IGAUSSIAN" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE",
effects=list( list(
interaction="BAR" | "CROSS" | "NONE",
maxInteract=integer,
nest=list("string-1" <, "string-2", ...>),
required parameter vars=list("string-1" <, "string-2", ...>)
) <, list(...)>),
fdHessian=TRUE | FALSE,
initialPhi=double,
link="CLOGLOG" | "IDENTITY" | "LOG" | "LOGIT" | "LOGLOG" | "NORMIT" | "POWERMINUS2" | "RECIPROCAL",
maxPhi=double,
minPhi=double,
normalize=TRUE | FALSE,
offset="variable-name",
phi=double,
ridge=double,
splines=list( list(
details_knots=TRUE | FALSE,
details_penalty=TRUE | FALSE,
details_summary=TRUE | FALSE,
df=integer,
initSmooth=double,
knots=integer | list(double-1 <, double-2, ...>),
m=integer,
maxDf=integer,
maxKnots=integer,
maxSmooth=double,
minSmooth=double,
smooth=double,
required parameter vars=list("variable-name-1" <, "variable-name-2", ...>)
) <, list(...)>),
trial="variable-name",
tweedieOffset=double,
tweedieP=double
),
noPrint=TRUE | FALSE,
output=list(
alpha=double,
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,
lower="string",
pearson="string",
pred="string",
resid="string",
std="string",
upper="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
),
plikeOpts=list(
absConv=double,
absFConv=double,
absFConv_n=integer,
absGConv=double,
absGConv_n=integer,
fConv=double,
fConv_n=integer,
gConv=double,
gConv_n=integer,
maxFunc=double,
maxIter=double,
maxTime=double,
minIter=integer,
),
seed=64-bit-integer,
singChol=double,
singular=double,
smoothOpts=list(
absConv=double,
absFConv=double,
absFConv_n=integer,
absGConv=double,
absGConv_n=integer,
fConv=double,
fConv_n=integer,
gConv=double,
gConv_n=integer,
maxFunc=double,
maxIter=double,
maxTime=double,
minIter=integer,
),
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

alpha=double

specifies the significance level to use for hypothesis testing of regression parameters and spline effects, and for the construction of all confidence bands.

Default 0.05
Range (0, 1)

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, requests an iteration history table for smoothing parameters or for regression parameters when fixed smoothing parameters are specified.

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(gamplmodel)

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

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

allObs=TRUE | FALSE

when set to True, constructs a spline by including all observations that do not have a missing value for any variable that is specified in that spline.

Default FALSE
criterion="DEFAULT" | "GACV" | "GCV" | "UBRE"

specifies the model fitting criterion to optimize.

DEFAULT

uses a model evaluation criterion based on the specified distribution.

GACV

uses the GACV criterion for model evaluation.

GCV

uses the GCV criterion for model evaluation.

UBRE

uses the UBRE criterion for model evaluation.

critFactor=double

adjusts the model fitting criterion for optimization.

Default 1
Minimum value 1
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" | "NEGBINOMIAL" | "POISSON" | "TWEEDIE"

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.

fdHessian=TRUE | FALSE

when set to True, uses the finite difference Hessian for optimization.

Default FALSE
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
method="OUTER" | "PERFORMANCE"

specifies the model fitting algorithm.

Default PERFORMANCE
OUTER

uses the outer iteration method to search an optimal model.

PERFORMANCE

uses the performance iteration method to search an optimal model.

minPhi=double

specifies the minimum dispersion parameter.

Minimum value 0
normalize=TRUE | FALSE

when set to True, requests normalized spline basis functions for model fitting.

Default FALSE
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
ridge=double

specifies the ridge parameter.

Default 0
Range 0–1
scale="DEVIANCE" | "MLE" | "PEARSON"

specifies the fitting method for the dispersion parameter.

Default MLE
DEVIANCE

uses the deviance statistic to estimate the dispersion parameter.

MLE

uses the maximum likelihood to estimate the dispersion parameter.

PEARSON

uses the Pearson's statistic to estimate the dispersion parameter.

splines=list( list(splineTerm-1) <, list(splineTerm-2), ...>)

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

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

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=integer

specifies the fixed degrees of freedom for a spline term.

Minimum value 0
initSmooth=double

specifies the initial smoothing parameter for a spline term.

Minimum value 0
knots=integer | list(double-1 <, double-2, ...>)

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

m=integer

specifies the order of the derivative in the smoothness penalty for a spline term.

Minimum value 1
maxDf=integer

specifies the maximum degrees of freedom for a spline term.

Minimum value 1
maxKnots=integer

specifies the maximum number of knots for a spline term.

Default 2000
Minimum value 1
maxSmooth=double

specifies the maximum smoothing parameter for a spline term.

Minimum value 0
minSmooth=double

specifies the minimum smoothing parameter for a spline term.

Minimum value 0
smooth=double

specifies the fixed smoothing parameter for a spline term.

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

specifies the variables to use in a spline term.

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).

tweedieInitialP=double

specifies the initial power parameter for the Tweedie distribution.

Minimum value 1
tweedieOffset=double

specifies a constant to be added to the response for evaluating the quasi-likelihood for the Tweedie distribution.

Minimum value 0
tweedieP=double

specifies the fixed power parameter for the Tweedie distribution.

Minimum value 1

nClassLevelsPrint=integer

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

Minimum value 0

noPrint=TRUE | FALSE

when set to True, suppresses all output.

Default FALSE

output=list(gamplOutputStatement)

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

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

alpha=double

specifies the significance level to use for the construction of all confidence bands.

Range (0, 1)
* 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)
lower="string"

names the lower Bayesian confidence band for the predicted value. The default name is Lower.

Aliases lclm
lowerMean
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
std="string"

names the standard error of the linear predictor. The default name is Std.

upper="string"

names the upper Bayesian confidence band for the predicted value. The default name is Upper.

Aliases uclm
upperMean
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.

plikeOpts=list(optimspecs)

specifies optimization parameters for maximum (penalized) likelihood estimation.

Long form plikeOpts=list(technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG")
Shortcut form plikeOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

absConv=double

specifies the absolute function convergence criterion.

Alias abstol
absFConv=double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
absFConv_n=integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
absGConv=double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
absGConv_n=integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
fConv=double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
fConv_n=integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
gConv=double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
gConv_n=integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
maxFunc=double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
maxIter=double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
maxTime=double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
minIter=integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

seed=64-bit-integer

specifies a seed for starting the pseudorandom number generator.

Default 0
Range 0–4294967295

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

smoothOpts=list(optimspecs)

specifies optimization parameters for smoothing parameter optimization.

Long form smoothOpts=list(technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG")
Shortcut form smoothOpts="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

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

absConv=double

specifies the absolute function convergence criterion.

Alias abstol
absFConv=double

specifies the absolute function difference convergence criterion.

Alias absftol
Minimum value 0
absFConv_n=integer

specifies the number of successive iterations for which the absolute function difference convergence criterion must be satisfied before the optimization ends.

Alias absftol_n
Minimum value 0
absGConv=double

specifies the absolute gradient convergence criterion.

Alias absgtol
Minimum value 0
absGConv_n=integer

specifies the number of successive iterations for which the absolute gradient convergence criterion must be satisfied before the optimization ends.

Alias absgtol_n
Minimum value 0
fConv=double

specifies the relative function difference convergence criterion.

Alias ftol
Minimum value 0
fConv_n=integer

specifies the number of successive iterations for which the relative function difference convergence criterion must be satisfied before the optimization ends.

Alias ftol_n
Minimum value 0
gConv=double

specifies the relative gradient convergence criterion.

Alias gtol
Minimum value 0
gConv_n=integer

specifies the number of successive iterations for which the relative gradient convergence criterion must be satisfied before the optimization ends.

Alias gtol_n
Minimum value 0
maxFunc=double

specifies the maximum number of function evaluations.

Alias maxfu
Minimum value 0
maxIter=double

specifies the maximum number of iterations.

Alias maxit
Minimum value 0
maxTime=double

specifies the maximum allowed CPU time in seconds.

Minimum value 0
minIter=integer

specifies the minimum number of iterations.

Alias minit
Minimum value 0
technique="CONGRA" | "DBLDOG" | "DUQUANEW" | "NEWRAP" | "NMSIMP" | "NONE" | "NRRIDG" | "QUANEW" | "TRUREG"

specifies the optimization technique.

CONGRA

uses the conjugate gradient method, which requires first-order derivatives.

DBLDOG

uses the double-dogleg method, which requires first-order derivatives.

DUQUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

NEWRAP

uses the Newton-Raphson method with line search and ridging, which requires first- and second-order derivatives.

NMSIMP

uses the Nelder-Mead simplex method, which does not require any derivatives.

NONE

does not perform any optimization. Results are computed at the starting parameter values.

NRRIDG

uses the Newton-Raphson method with ridging, which requires first- and second-order derivatives.

QUANEW

uses the dual quasi-Newton method, which requires first-order derivatives.

TRUREG

uses the trust region method, which requires first- and second-order derivatives.

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