Trains a GAM using mgcv::gam and validates it.
Input will be used to create a formula of the form:
$$y = s(x_{1}, k = gam.k) + s(x_{2}, k = gam.k) + ... + s(x_{n}, k = gam.k)$$
# S3 method for formula
s.GAM(formula, data, data.test = NULL, x.name = NULL,
y.name = NULL, k = 6, interactions = TRUE, family = gaussian(),
weights = NULL, method = "REML", select = FALSE, verbose = TRUE,
print.plot = TRUE, plot.fitted = NULL, plot.predicted = NULL,
plot.theme = getOption("rt.fit.theme", "lightgrid"),
na.action = na.exclude, question = NULL, n.cores = rtCores,
outdir = NULL, save.mod = ifelse(!is.null(outdir), TRUE, FALSE), ...)Character: Name for feature set
Character: Name for outcome
Integer. Number of bases for smoothing spline
Logical: If TRUE, include all pairwise interactions. formula = y ~.*.
Error distribution and link function. See stats::family
Numeric vector: Weights for cases. For classification, weights takes precedence
over ipw, therefore set weights = NULL if using ipw.
Note: If weight are provided, ipw is not used. Leave NULL if setting ipw = TRUE. Default = NULL
Logical: If TRUE, print summary to screen.
Logical: if TRUE, produce plot using mplot3
Takes precedence over plot.fitted and plot.predicted
Logical: if TRUE, plot True (y) vs Fitted
Logical: if TRUE, plot True (y.test) vs Predicted.
Requires x.test and y.test
String: "zero", "dark", "box", "darkbox"
How to handle missing values. See ?na.fail
String: the question you are attempting to answer with this model, in plain language.
Path to output directory.
If defined, will save Predicted vs. True plot, if available,
as well as full model output, if save.mod is TRUE
Logical. If TRUE, save all output as RDS file in outdir
save.mod is TRUE by default if an outdir is defined. If set to TRUE, and no outdir
is defined, outdir defaults to paste0("./s.", mod.name)
Additional arguments to be passed to mgcv::gam
Factors to be included as covariates in model building
Factors to be included as covariates in model validation
s.GAM.default is the preferred way to train GAMs
elevate for external cross-validation
Other Supervised Learning: s.ADABOOST,
s.ADDTREE, s.BART,
s.BAYESGLM, s.BRUTO,
s.C50, s.CART,
s.CTREE, s.DA,
s.ET, s.EVTREE,
s.GAM.default, s.GAMSEL,
s.GAM, s.GBM3,
s.GBM, s.GLMNET,
s.GLM, s.GLS,
s.H2ODL, s.H2OGBM,
s.H2ORF, s.IRF,
s.KNN, s.LDA,
s.LM, s.MARS,
s.MLRF, s.MXN,
s.NBAYES, s.NLA,
s.NLS, s.NW,
s.POLYMARS, s.PPR,
s.PPTREE, s.QDA,
s.QRNN, s.RANGER,
s.RFSRC, s.RF,
s.SGD, s.SPLS,
s.SVM, s.TFN,
s.XGBLIN, s.XGB