View source: R/facets_mode_api.R
| run_mfrm_facets | R Documentation |
This helper mirrors mfrmRFacets.R behavior as a package API and keeps
legacy-compatible defaults (model = "RSM", method = "JML"), while allowing
users to choose compatible estimation options.
run_mfrm_facets(
data,
person = NULL,
facets = NULL,
score = NULL,
weight = NULL,
keep_original = FALSE,
model = c("RSM", "PCM"),
method = c("JML", "JMLE", "MML"),
step_facet = NULL,
anchors = NULL,
group_anchors = NULL,
noncenter_facet = "Person",
dummy_facets = NULL,
positive_facets = NULL,
quad_points = 15,
maxit = 400,
reltol = 1e-06,
top_n_interactions = 20L
)
mfrmRFacets(
data,
person = NULL,
facets = NULL,
score = NULL,
weight = NULL,
keep_original = FALSE,
model = c("RSM", "PCM"),
method = c("JML", "JMLE", "MML"),
step_facet = NULL,
anchors = NULL,
group_anchors = NULL,
noncenter_facet = "Person",
dummy_facets = NULL,
positive_facets = NULL,
quad_points = 15,
maxit = 400,
reltol = 1e-06,
top_n_interactions = 20L
)
data |
A data.frame in long format. |
person |
Optional person column name. If |
facets |
Optional facet column names. If |
score |
Optional score column name. If |
weight |
Optional weight column name. |
keep_original |
Passed to |
model |
MFRM model ( |
method |
Estimation method ( |
step_facet |
Step facet for PCM mode; passed to |
anchors |
Optional anchor table (data.frame). |
group_anchors |
Optional group-anchor table (data.frame). |
noncenter_facet |
Non-centered facet passed to |
dummy_facets |
Optional dummy facets fixed at zero. |
positive_facets |
Optional facets with positive orientation. |
quad_points |
Quadrature points for MML; passed to |
maxit |
Maximum optimizer iterations. |
reltol |
Optimization tolerance. |
top_n_interactions |
Number of rows for interaction diagnostics. |
run_mfrm_facets() is intended as a one-shot workflow helper:
fit -> diagnostics -> key report tables.
Returned objects can be inspected with summary() and plot().
A list with components:
fit: fit_mfrm() result
diagnostics: diagnose_mfrm() result
iteration: estimation_iteration_report() result
fair_average: fair_average_table() result
rating_scale: rating_scale_table() result
run_info: run metadata table
mapping: resolved column mapping
method = "JML" (default): legacy-compatible joint estimation route.
method = "JMLE": explicit JMLE label; internally equivalent to JML route.
method = "MML": marginal maximum likelihood route using quad_points.
model = "PCM" is supported; set step_facet when facet-specific step
structure is needed.
plot(out, type = "fit") delegates to plot.mfrm_fit() and returns
fit-level visual bundles (e.g., Wright/pathway/CCC).
plot(out, type = "qc") delegates to plot_qc_dashboard() and returns
a QC dashboard plot object.
Start with summary(out):
check convergence and iteration count in overview.
confirm resolved columns in mapping.
Then inspect:
out$rating_scale for category/threshold behavior.
out$fair_average for observed-vs-model scoring tendencies.
out$diagnostics for misfit/reliability/interactions.
Run run_mfrm_facets() with explicit column mapping.
Check summary(out) and summary(out$diagnostics).
Visualize with plot(out, type = "fit") and plot(out, type = "qc").
Export selected tables for reporting (out$rating_scale, out$fair_average).
For new scripts, prefer the package-native route:
fit_mfrm() -> diagnose_mfrm() -> reporting_checklist() ->
build_apa_outputs().
Use run_mfrm_facets() when you specifically need the legacy-compatible
one-shot wrapper.
fit_mfrm(), diagnose_mfrm(), estimation_iteration_report(),
fair_average_table(), rating_scale_table(), mfrmr_visual_diagnostics,
mfrmr_workflow_methods, mfrmr_compatibility_layer
toy <- load_mfrmr_data("example_core")
toy_small <- toy[toy$Person %in% unique(toy$Person)[1:12], , drop = FALSE]
# Legacy-compatible default: RSM + JML
out <- run_mfrm_facets(
data = toy_small,
person = "Person",
facets = c("Rater", "Criterion"),
score = "Score",
maxit = 6
)
names(out)
out$fit$summary[, c("Model", "Method")]
s <- summary(out)
s$overview[, c("Model", "Method", "Converged")]
p_fit <- plot(out, type = "fit", draw = FALSE)
class(p_fit)
# Optional: MML route
if (interactive()) {
out_mml <- run_mfrm_facets(
data = toy_small,
person = "Person",
facets = c("Rater", "Criterion"),
score = "Score",
method = "MML",
quad_points = 5,
maxit = 6
)
out_mml$fit$summary[, c("Model", "Method")]
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.