| estimate_control | R Documentation |
estimate_control() and rotate_control() collect the estimation and rotation
tuning arguments of a factor analysis into two small, validated objects. They
are a declarative surface over the same settings resolved internally by the
package's estimation and rotation engines, so that a fit's many tuning knobs can
be prepared, inspected, and reused as a single value instead of being passed one
by one.
estimate_control(
type = c("EFAtools", "psych", "SPSS", "none"),
init_comm = NA,
criterion = NA,
criterion_type = NA,
max_iter = NA,
abs_eigen = NA,
start_method = "psych",
fiml_max_iter = 500,
fiml_tol = 1e-05
)
rotate_control(
type = c("EFAtools", "psych", "SPSS", "none"),
normalize = TRUE,
precision = 1e-05,
order_type = NA,
varimax_type = NA,
p_type = NA,
k = NA,
random_starts = 100,
...
)
type |
character. One of |
init_comm |
character. Method for the initial communalities in principal
axis factoring: |
criterion |
numeric. The convergence criterion for principal axis
factoring: iteration stops once the change in communalities falls below it. A
single number greater than 0 and smaller than 1; |
criterion_type |
character. The convergence criterion type for principal
axis factoring: |
max_iter |
numeric. The maximum number of principal-axis-factoring
iterations before the procedure is halted with a warning. A single whole
number of at least 1; |
abs_eigen |
logical. Which algorithm the principal-axis-factoring
iterations use: |
start_method |
character. Starting values for the maximum-likelihood
optimiser: |
fiml_max_iter |
numeric. The maximum number of EM iterations used to estimate the
two-stage full-information maximum-likelihood moments from raw data with missing
values ( |
fiml_tol |
numeric. The convergence tolerance of that EM: iteration stops once the
largest change in the standardized moments (the standardized means, log-variances, and
correlations) falls below it, so it does not depend on the variables' measurement
scale. A single number greater than 0 and smaller than 1 (at or above 1 the criterion is
met immediately and the starting moments would be returned as converged); default |
normalize |
logical. If |
precision |
numeric. The convergence tolerance of the rotation procedure. A
single number greater than 0 and at most 1; default |
order_type |
character. How the factors are ordered: |
varimax_type |
character. The varimax variant used (for the varimax and
promax rotations): |
p_type |
character. How the promax target matrix is computed: |
k |
numeric. The promax power (for the target matrix) or the number of
near-zero loadings for simplimax. A single number greater than 0; |
random_starts |
numeric. The number of random starts used by the
criterion-based rotations to guard against local minima. A single whole number
of at least 0, where |
... |
Additional arguments forwarded to the rotation engine. Only the names
a rotation engine can consume are accepted: |
Each argument that governs a type preset defaults to NA, meaning "leave this
knob to the preset". Setting type to one of "EFAtools", "psych", or
"SPSS" fills those knobs from the corresponding preset when the fit is run;
setting type = "none" requires the relevant knobs to be supplied explicitly.
The control object only records the chosen type and the knobs you set: the
preset is resolved (and any "argument set alongside type" warning issued) when
the object is used to fit a model, exactly as it is today, because which preset
applies depends on the estimator and rotation.
estimate_control() returns a list of class efa_estimate_control with
the components type, init_comm, criterion, criterion_type, max_iter,
abs_eigen, start_method, fiml_max_iter, and fiml_tol.
rotate_control() returns a list of class
efa_rotate_control with the components type, normalize, precision,
order_type, varimax_type, p_type, k, random_starts, and extra_args
(a named list of any additional arguments forwarded to the rotation engine).
efa_fit(), which takes both controls; efa_retain(), the retention
criteria, and efa_schmid_leiman(), which take an estimate_control for the
fits they run.
Other Control functions:
print.efa_control
# Estimation knobs taken entirely from a preset:
estimate_control(type = "SPSS")
# A preset with one knob pinned to a non-preset value:
estimate_control(type = "EFAtools", max_iter = 500)
# Every knob supplied explicitly (type = "none"):
estimate_control(type = "none", init_comm = "smc", criterion = 1e-3,
criterion_type = "sum", max_iter = 300, abs_eigen = TRUE)
# Rotation knobs taken from a preset:
rotate_control(type = "psych")
# A criterion-specific extra argument, forwarded to the rotation engine:
rotate_control(type = "EFAtools", k = 3, gam = 0.5)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.