Trains a Bayesian Additive Regression Tree (BART) model using package bartMachine
and validates it
s.BART(x, y = NULL, x.test = NULL, y.test = NULL, x.name = NULL,
y.name = NULL, n.trees = c(100, 200), k_cvs = c(2, 3),
nu_q_cvs = list(c(3, 0.9), c(10, 0.75)), k_folds = 5,
n.burnin = 250, n.iter = 1000, n.cores = rtCores,
upsample = FALSE, upsample.seed = NULL, print.plot = TRUE,
plot.fitted = NULL, plot.predicted = NULL,
plot.theme = getOption("rt.fit.theme", "lightgrid"), question = NULL,
rtclass = NULL, verbose = TRUE, trace = 0, outdir = NULL,
save.mod = ifelse(!is.null(outdir), TRUE, FALSE), java.mem.size = 12,
...)
Numeric vector or matrix / data frame of features i.e. independent variables
Numeric vector of outcome, i.e. dependent variable
Numeric vector or matrix / data frame of testing set features
Columns must correspond to columns in x
Numeric vector of testing set outcome
Character: Name for feature set
Character: Name for outcome
Logical: If TRUE, upsample cases to balance outcome classes (for Classification only) Caution: upsample will randomly sample with replacement if the length of the majority class is more than double the length of the class you are upsampling, thereby introducing randomness
Integer: If provided, will be used to set the seed during upsampling. Default = NULL (random seed)
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"
String: the question you are attempting to answer with this model, in plain language.
String: Class type to use. "S3", "S4", "RC", "R6"
Logical: If TRUE, print summary to screen.
Integer: If higher than 0, will print more information to the console. Default = 0
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, sets bartMachine
's serialize
to TRUE and saves model to outdir
Additional arguments to be passed to bartMachine::bartMachine
Object of class rtemis
If you are having trouble with rJava in Rstudio on macOS, see my solution here:
https://support.rstudio.com/hc/en-us/community/posts/203663956/comments/249073727
bartMachine
does not support case weights
elevate for external cross-validation
Other Supervised Learning: s.ADABOOST
,
s.ADDTREE
, s.BAYESGLM
,
s.BRUTO
, s.C50
,
s.CART
, s.CTREE
,
s.DA
, s.ET
,
s.EVTREE
, s.GAM.default
,
s.GAM.formula
, 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
Other Tree-based methods: s.ADABOOST
,
s.ADDTREE
, s.C50
,
s.CART
, s.CTREE
,
s.ET
, s.EVTREE
,
s.GBM3
, s.GBM
,
s.H2OGBM
, s.H2ORF
,
s.IRF
, s.MLRF
,
s.PPTREE
, s.RANGER
,
s.RFSRC
, s.RF
,
s.XGB