mod_effect {mosaicModel} | R Documentation |
Calculate effect sizes in a model
Description
Like a derivative or finite-difference
Usage
mod_effect(model, formula, step = NULL, bootstrap = 0, to = step,
nlevels = 1, data = NULL, at = NULL, class_level = NULL, ...)
Arguments
model |
the model from which the effect size is to be calculated |
formula |
a formula whose right-hand side is the variable with respect to which the effect size is to be calculated. |
step |
the numerical stepsize for the change var, or a comparison category for a categorical change var. This will be either a character string or a number, depending on the type of variable specified in the formula. |
bootstrap |
The number of bootstrap replications to construct. If greater than 1, calculate a standard error using that number of replications. |
to |
a synonym for step. (In English, "to" is more appropriate for a categorical input, "step" for a quantitative. But you can use either.) |
nlevels |
integer specifying the number of levels to use for "typical" inputs. (Default: up to 3) |
data |
Specifies exactly the cases at which you want to calculate the effect size. |
at |
similar to |
class_level |
Name of the categorical level for which the probability is to be used. Applies
only to classifiers. (Default: Use the first level.)
Unlike |
... |
additional arguments for evaluation levels of explanatory variables. |
Details
When you want to force or restrict the effect size calculation to specific values for
explanatory variables, list those variables and levels as a vector in ...
For example, educ = c(10, 12, 16)
will cause the effect size to be calculated
at each of those three levels of education. Any variables whose levels are not specified in
... will have values selected automatically.
Value
a data frame giving the effect size and the values of the explanatory variables at which
the effect size was calculated. There will also be a column to_
showing the value jumped to for the
variable with respect to which the effect size is calculated. When bootstrap
is greater than 1, there will
be a standard error reported on the effect size; see the variable ending in _se
.
Examples
mod1 <- lm(wage ~ age * sex * educ + sector, data = mosaicData::CPS85)
mod_effect(mod1, ~ sex)
mod_effect(mod1, ~ sector)
mod_effect(mod1, ~ age, sex = "M", educ = c(10, 12, 16), age = c(30, 40))
mod_effect(mod1, ~ age, sex = "F", age = 34, step = 1)
mod_effect(mod1, ~ sex, age = 35, sex = "M", to = "F" )
# For classifiers, the change in *probability* of a level is reported.
mod2 <- rpart::rpart(sector ~ age + sex + educ + wage, data = mosaicData::CPS85)
mod_effect(mod2, ~ educ)
mod_effect(mod2, ~ educ, class_level = "manag")