Helper functions to convert between formula and matrix interface
Source:R/convert_data.R
convert_helpers.Rd
Functions to take a formula interface and get the resulting
objects (y, x, weights, etc) back or the other way around. The functions
are intended for developer use. For the most part, this emulates the
internals of lm()
(and also see the notes at
https://developer.r-project.org/model-fitting-functions.html).
.convert_form_to_x_fit()
and .convert_x_to_form_fit()
are for when the
data are created for modeling. .convert_form_to_x_fit()
saves both the
data objects as well as the objects needed when new data are predicted
(e.g. terms
, etc.).
.convert_form_to_x_new()
and .convert_x_to_form_new()
are used when new
samples are being predicted and only require the predictors to be
available.
Usage
.convert_form_to_x_fit(
formula,
data,
...,
na.action = na.omit,
indicators = "traditional",
composition = "data.frame",
remove_intercept = TRUE
)
.convert_x_to_form_fit(x, weights = NULL, remove_intercept = TRUE)
.convert_form_to_x_new(
object,
new_data,
na.action = stats::na.pass,
composition = "data.frame"
)
.convert_x_to_form_new(object, new_data)
Arguments
- formula
An object of class
formula
(or one that can be coerced to that class): a symbolic description of the model to be fitted.- data
A data frame containing all relevant variables (e.g. predictors, case weights, etc).
- ...
Additional arguments passed to
stats::model.frame()
.- na.action
A function which indicates what should happen when the data contain NAs.
- indicators
A string describing whether and how to create indicator/dummy variables from factor predictors. Possible options are
"none"
,"traditional"
, and"one_hot"
.- composition
A string describing whether the resulting
x
andy
should be returned as a"matrix"
or a"data.frame"
.- remove_intercept
A logical indicating whether to remove the intercept column after
model.matrix()
is finished.- x
A matrix, sparse matrix, or data frame of predictors. Only some models have support for sparse matrix input. See
modelenv::get_encoding()
for details.x
should have column names.- weights
A numeric vector containing the weights.
- object
An object of class
cluster_fit
.- new_data
A rectangular data object, such as a data frame.