| Title: | Automated Psychometric Workflows and Reporting Tools |
|---|---|
| Description: | Automates common psychometric workflows for applied researchers, including item descriptives, inter-item correlations, exploratory and confirmatory factor analysis, exploratory structural equation measurement models, reliability, psychometric network analysis, multi-group measurement invariance, and alignment optimization. Decision heuristics are informed by procedures such as parallel analysis (Horn, 1965, <doi:10.1007/BF02289447>), multivariate normality diagnostics (Mardia, 1970, <doi:10.1093/biomet/57.3.519>), measurement-invariance fit-change rules (Chen, 2007, <doi:10.1080/10705510701301834>), and alignment optimization (Asparouhov and Muthen, 2014, <doi:10.1080/10705511.2014.919210>), among others. Results can be returned as structured R objects and exported as bilingual reports for transparent analytical documentation. |
| Authors: | Jose Gamarra-Moncayo [aut, cre] (ORCID: <https://orcid.org/0000-0002-0781-3616>) |
| Maintainer: | Jose Gamarra-Moncayo <[email protected]> |
| License: | GPL (>= 3) |
| Version: | 1.0.1 |
| Built: | 2026-10-26 01:36:31 UTC |
| Source: | https://github.com/gmoncayoj/psychomatic |
Runs a confirmatory factor analysis with heuristic estimator selection,
multivariate normality diagnostics, fit indices, reliability estimates, and
model respecification suggestions.
lavaan performs the model fit. When installed, MVN supplies the raw
Mardia diagnostic used by automatic estimator selection and semTools
supplies composite reliability and AVE. Their absence is recorded explicitly
and does not prevent the CFA from being fitted; when normality cannot be
evaluated, automatic selection conservatively uses MLR for continuous data.
Fit indices retain their base, scaled, and robust values, and the effective
variant is identified separately for every index.
cfa_auto( data, model, ordered = NULL, estimator = NULL, std.lv = FALSE, mi_threshold = 10, n_mi = 10, alpha_norm = 0.05, language = "eng", bifactor_orthogonal = TRUE, digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE, fit_variant = c("scaled", "robust", "base") )cfa_auto( data, model, ordered = NULL, estimator = NULL, std.lv = FALSE, mi_threshold = 10, n_mi = 10, alpha_norm = 0.05, language = "eng", bifactor_orthogonal = TRUE, digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE, fit_variant = c("scaled", "robust", "base") )
data |
Data frame containing the observed variables. |
model |
Model syntax written for |
ordered |
Optional vector indicating which items should be treated as ordinal. |
estimator |
Optional estimator. If |
std.lv |
Whether latent variables should be standardized. |
mi_threshold |
Minimum threshold for reporting modification indices. |
n_mi |
Maximum number of modification indices to display. |
alpha_norm |
Alpha level used when evaluating multivariate normality. |
language |
Report language: |
bifactor_orthogonal |
Logical scalar used only for detected bifactor
models. The default preserves the historical orthogonal bifactor fit; set
|
digits |
Decimal places in console and reports; stored values keep full precision. |
report |
If |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
fit_variant |
Preferred fit-index variant: |
An object of classes cfa_auto and psychomatic_result. The fitted
lavaan object is available in fit; reusable tidy tables are available in
tables, fit_indices, loadings_table, and reliability_table.
warnings is a structured data frame with condition metadata;
warnings_list is the transitional character-vector view retained for
code written for PsychoMatic 0.3.x.
Since PsychoMatic 1.0.0, use result$warnings for programmatic inspection
of warning sources and messages. Existing code that expects a character
vector can migrate to result$warnings_list; this compatibility alias will
be retained through a deprecation cycle. For example,
warning_messages <- result$warnings_list replaces code that previously
treated result$warnings as character data.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" cfa_auto(MY_DATA, model = model) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" cfa_auto(MY_DATA, model = model) ## End(Not run)
Fits a named set of lavaan CFA models and returns a compact comparison table. The recommendation is descriptive only and favors converged models with stronger comparative fit indices. Information criteria are reported when available, but they are not required and are not used for WLSMV-style categorical estimators.
compare_models_auto( data, models, ordered = NULL, estimator = NULL, language = c("eng", "esp"), digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE, fit_variant = c("scaled", "robust", "base") )compare_models_auto( data, models, ordered = NULL, estimator = NULL, language = c("eng", "esp"), digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE, fit_variant = c("scaled", "robust", "base") )
data |
Data frame containing observed variables. |
models |
Named list or named character vector of lavaan model strings. |
ordered |
Optional ordered variables passed to |
estimator |
Estimator passed to |
language |
Recommendation language: |
digits |
Decimal places in console and reports; stored values keep full precision. |
report |
If |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
fit_variant |
Fit-index variant for both reporting and comparison:
|
A list of class psychomatic_model_comparison.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: models <- list(one_factor = "F =~ R1 + R2 + R3 + R4 + R5 + R6", two_factors = "F1 =~ R1 + R2 + R3\nF2 =~ R4 + R5 + R6") compare_models_auto(MY_DATA, models = models) compare_models_auto(MY_DATA, models = models, fit_variant = "robust") ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: models <- list(one_factor = "F =~ R1 + R2 + R3 + R4 + R5 + R6", two_factors = "F1 =~ R1 + R2 + R3\nF2 =~ R4 + R5 + R6") compare_models_auto(MY_DATA, models = models) compare_models_auto(MY_DATA, models = models, fit_variant = "robust") ## End(Not run)
Computes an inter-item correlation matrix using Pearson, polychoric, or tetrachoric correlations. Optionally exports the matrix to an Excel file.
cormat( data, type = c("auto", "pearson", "poly", "tetra"), report = FALSE, file_name = NULL, digits = 3, ordinal_levels = NULL, overwrite = FALSE, format = "excel", verbose = TRUE, language = "eng" )cormat( data, type = c("auto", "pearson", "poly", "tetra"), report = FALSE, file_name = NULL, digits = 3, ordinal_levels = NULL, overwrite = FALSE, format = "excel", verbose = TRUE, language = "eng" )
data |
Data frame or matrix containing the items. |
type |
Defaults to |
report |
If |
file_name |
Optional Excel file name. If |
digits |
Number of decimal places used in the Excel report. |
ordinal_levels |
Optional uniquely named list giving the ordered levels
for unordered categorical items used with |
overwrite |
If |
format |
Report format: |
verbose |
If |
language |
Output language: |
A correlation matrix with pairwise sample sizes, requested and effective correlation types, and validation diagnostics as attributes.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: cormat(MY_DATA[, 3:14]) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: cormat(MY_DATA[, 3:14]) ## End(Not run)
Computes compact descriptive statistics for numeric and ordered item columns. Ordinal response percentages are retained as a separate long table. Results can optionally be exported to Excel.
desc_auto( data, digits = 3, language = "eng", report = FALSE, file_name = NULL, overwrite = FALSE, format = "excel", verbose = TRUE )desc_auto( data, digits = 3, language = "eng", report = FALSE, file_name = NULL, overwrite = FALSE, format = "excel", verbose = TRUE )
data |
Data frame, matrix, or |
digits |
Number of decimal places used in the report. Returned numeric values are not rounded. |
language |
Report language: |
report |
If |
file_name |
Optional Excel output path. If |
overwrite |
If |
format |
Report format: |
verbose |
If |
A compact data frame with one row per item. A long data frame with
columns item, category, n, and percent is available from the
response_percentages attribute.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: desc_auto(MY_DATA[, 3:14]) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: desc_auto(MY_DATA[, 3:14]) ## End(Not run)
Performs a lightweight DIF screening using logistic regression. By default, polytomous items are reported as not evaluable because dichotomization can obscure category-specific DIF. Median dichotomization is available only as an explicit compatibility option and should be followed by a dedicated IRT or ordinal DIF analysis.
dif_auto( data, group, items = NULL, alpha = 0.01, language = c("eng", "esp"), digits = 3, polytomous = c("not_evaluable", "median"), report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )dif_auto( data, group, items = NULL, alpha = 0.01, language = c("eng", "esp"), digits = 3, polytomous = c("not_evaluable", "median"), report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )
data |
Data frame or matrix containing item responses. If |
group |
Grouping vector or the name of the grouping column in |
items |
Optional item names. Defaults to all numeric item columns except the grouping column. |
alpha |
Significance level used for DIF flags. |
language |
Interpretation language: |
digits |
Number of decimal places used in interpretation tables. |
polytomous |
Handling of polytomous focal items. The default,
|
report |
If |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
A list of class psychomatic_dif with screening results,
item-level interpretation (dif_type, decision, severity, and
recommendation), an overall DIF summary, and supporting APA 7 references.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: dif_auto(MY_DATA[, 3:14], group = MY_DATA$Country) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: dif_auto(MY_DATA[, 3:14], group = MY_DATA$Country) ## End(Not run)
Runs a compact exploratory factor-analysis workflow: item checks,
correlation selection, Mardia diagnostics, parallel analysis, factor fitting,
item screening, and reliability summaries. Screening can suggest changes or
remove one item at a time. Every mutation is followed by a complete refit
that reclassifies the current item set and resolves its correlation method.
Omega uses the same independent one-factor model per dimension as
reliability_auto(), not the loadings of the exploratory solution.
efa_auto( data, rotation = c("oblique", "orthogonal"), min_loading = 0.3, min_communality = 0.3, min_cross_loading_diff = 0.15, max_iter = 20, verbose = TRUE, export_format = NULL, file_name = NULL, language = "eng", seed = NULL, refine = c("remove", "suggest"), parallel_iter = 500L, parallel_quantile = 0.95, repair = c("none", "nearPD"), digits = 3, report = FALSE, format = "excel", overwrite = FALSE, ... )efa_auto( data, rotation = c("oblique", "orthogonal"), min_loading = 0.3, min_communality = 0.3, min_cross_loading_diff = 0.15, max_iter = 20, verbose = TRUE, export_format = NULL, file_name = NULL, language = "eng", seed = NULL, refine = c("remove", "suggest"), parallel_iter = 500L, parallel_quantile = 0.95, repair = c("none", "nearPD"), digits = 3, report = FALSE, format = "excel", overwrite = FALSE, ... )
data |
Data frame, matrix, or |
rotation |
Rotation family: |
min_loading |
Minimum acceptable absolute factor loading. |
min_communality |
Minimum acceptable communality. |
min_cross_loading_diff |
Minimum difference between the two largest loadings used by the cross-loading screen. |
max_iter |
Maximum number of item-removal steps. |
verbose |
If |
export_format |
Optional export format passed to |
file_name |
Optional base path for exported files. When |
language |
Output language: |
seed |
Optional non-negative integer seed for parallel analysis. |
refine |
|
parallel_iter |
Number of simulations used by parallel analysis. |
parallel_quantile |
Reference quantile used by parallel analysis. |
repair |
Correlation-matrix repair. |
digits |
Decimal places in console and reports; stored values keep full precision. |
report |
If |
format |
Report format: |
overwrite |
If |
... |
Deprecated Spanish argument aliases. |
An object of classes efa_auto and psychomatic_result. Legacy
fields remain available during the 1.x compatibility cycle.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: efa_auto(MY_DATA[, 3:14]) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: efa_auto(MY_DATA[, 3:14]) ## End(Not run)
Fits one exploratory measurement block directly in lavaan, retaining all
within-block cross-loadings and rotated parameter uncertainty. With no
structural regressions this is EFA in the terminology of lavaan; ESEM is
also used for these measurement models in the psychometric literature.
esem_auto( data, factors = NULL, n_factors = NULL, items = NULL, rotation = "target", ordered = NULL, estimator = NULL, missing = "listwise", rotation_args = list(), seed = NULL, compare_cfa = FALSE, fit_variant = c("scaled", "robust", "base"), language = "eng", digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )esem_auto( data, factors = NULL, n_factors = NULL, items = NULL, rotation = "target", ordered = NULL, estimator = NULL, missing = "listwise", rotation_args = list(), seed = NULL, compare_cfa = FALSE, fit_variant = c("scaled", "robust", "base"), language = "eng", digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )
data |
Data frame, matrix, or |
factors |
Named list of primary item sets. Every selected item occurs once. Target requires this list. With geomin it only supplies selection, factor count and an optional CFA reference, not a rotation target. |
n_factors |
Integer >= 2, required for geomin without |
items |
Explicit column names or positive column indices for raw geomin
data without |
rotation |
|
ordered |
NULL inherits/detects measurement levels heuristically; TRUE treats all selected items as ordinal, FALSE requests numeric continuous treatment, or a character vector identifies ordinal items. Nominal factors require explicit ordinal mapping; ordered factors cannot silently become continuous scores. |
estimator |
NULL selects WLSMV with ordinal items, otherwise MLR. Explicit choices: WLSMV/ULSMV for ordinal or mixed items, ML/MLR for continuous. |
missing |
|
rotation_args |
Named options: |
seed |
NULL (default) leaves RNG management to lavaan without imposing a wrapper seed. An explicit nonnegative integer makes rotation starts reproducible and restores the incoming RNG state after fitting. |
compare_cfa |
Whether to fit the simple-structure CFA specified by
|
fit_variant |
|
language |
Output language: |
digits |
Number of display decimals. |
report |
Whether to write a report, or an explicit report path. |
file_name |
Report path/base; NULL uses a unique name in |
format |
|
overwrite |
Whether existing report files may be replaced. |
verbose |
Whether to print results and the manuscript draft. |
An esem_auto/psychomatic_result object. fit contains the native
lavaan fit with safe item aliases; results$item_map maps original names.
results contains loadings/IC95, item diagnostics, factor correlations,
fit variants, raw covariance residuals, target, maps and syntax.
Loading tables distinguish original-scale (raw_ci_lower, raw_ci_upper)
from standardized (ci_lower, ci_upper) native 95% intervals.
effective_settings$preparation records category order, declared reverse
scoring and the effective bounds, including inferred bounds. Report encoding
is the input category order before reverse scoring, which is recorded separately.
manuscript_text and results$manuscript contain a data-based draft placed
last under Interpretation in reader-facing console/Word/Excel output.
Preparation, item/factor maps and versions remain in the object and exports
but are omitted from the console. The text is not an independent
validation or substantive interpretation of unlabeled factors. Failed or
inadmissible fits produce limitations rather than favorable conclusions.
Target is useful when theory or previous research identifies the primary
dimension for each item, while allowing secondary loadings. factors defines
the target pattern. Secondary loadings are oriented towards zero, not fixed
to zero. A target entry of 1 leaves the primary loading untargeted; it does
not fix that loading to 1. A data-derived target from the same sample remains
exploratory and requires independent validation for stronger generalization.
Geomin is useful when the item-factor organization is uncertain. It seeks
a relatively simple pattern without prescribing substantive memberships.
n_factors remains an investigator decision. Factors retain neutral IDs
because order and signs do not establish their substantive interpretation.
The initial epsilon is 0.001, not a universal optimum; specify alternatives
through rotation_args and report the chosen value. Both options are oblique.
Rotations of the same unrestricted block preserve global model fit; CFI and RMSEA do not select the preferable rotation. Consider theoretical coherence, loading patterns and stability. Thirty random starts do not establish a global optimum or sampling stability. Reported standardized loadings are pattern coefficients, not the oblique structure matrix.
Asparouhov, T., & Muthén, B. (2009). Exploratory structural equation modeling. Structural Equation Modeling, 16(3), 397–438. doi:10.1080/10705510903008204.
Marsh, H., & Alamer, A. (2024). When and how to use set-exploratory structural equation modelling to test structural models: A tutorial using the R package lavaan. British Journal of Mathematical and Statistical Psychology, 77(3), 459–476. doi:10.1111/bmsp.12336.
## Not run: # Replace MY_DATA with your data frame. # Ordinal items in columns 2:13; column 1 is not an item. result <- esem_auto(data = MY_DATA, n_factors = 3, items = 2:13, rotation = "geomin", ordered = TRUE, language = "esp") result$manuscript_text # Continuous indicators: MY_DATA must contain only item columns here. result <- esem_auto(data = MY_DATA, n_factors = 3, items = names(MY_DATA), rotation = "geomin", ordered = FALSE, language = "esp") # Target: replace the item names and primary memberships with your theory. factors <- list(Factor1 = c("R1", "R2", "R3", "R4"), Factor2 = c("R5", "R6", "R7", "R8"), Factor3 = c("R9", "R10", "R11", "R12")) result <- esem_auto(data = MY_DATA, factors = factors, rotation = "target", ordered = TRUE, language = "esp") ## End(Not run)## Not run: # Replace MY_DATA with your data frame. # Ordinal items in columns 2:13; column 1 is not an item. result <- esem_auto(data = MY_DATA, n_factors = 3, items = 2:13, rotation = "geomin", ordered = TRUE, language = "esp") result$manuscript_text # Continuous indicators: MY_DATA must contain only item columns here. result <- esem_auto(data = MY_DATA, n_factors = 3, items = names(MY_DATA), rotation = "geomin", ordered = FALSE, language = "esp") # Target: replace the item names and primary memberships with your theory. factors <- list(Factor1 = c("R1", "R2", "R3", "R4"), Factor2 = c("R5", "R6", "R7", "R8"), Factor3 = c("R9", "R10", "R11", "R12")) result <- esem_auto(data = MY_DATA, factors = factors, rotation = "target", ordered = TRUE, language = "esp") ## End(Not run)
Export CFA results to Excel or Word
export_cfa( result, format = c("excel", "word"), file_name = NULL, digits = 3, overwrite = FALSE )export_cfa( result, format = c("excel", "word"), file_name = NULL, digits = 3, overwrite = FALSE )
result |
Object of class |
format |
|
file_name |
Optional base file name without extension. If |
digits |
Number of decimal places used to format report values. Raw numeric values remain unchanged in Excel files. |
overwrite |
If |
Normalized output path, invisibly. When both formats are requested,
returns a named character vector; Excel output includes a sheet_map
attribute.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" result <- cfa_auto(MY_DATA, model = model) export_cfa(result, format = "word", file_name = "CFA.docx") ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" result <- cfa_auto(MY_DATA, model = model) export_cfa(result, format = "word", file_name = "CFA.docx") ## End(Not run)
Exports the structured tables from an efa_auto() result. The function uses
the package-level report writer so EFA exports stay consistent with the
integrated psychomatic_report() workflow.
export_efa( result, format = c("excel", "word"), file_name = NULL, overwrite = FALSE )export_efa( result, format = c("excel", "word"), file_name = NULL, overwrite = FALSE )
result |
Object of class |
format |
Output format: |
file_name |
Optional output path or base path. If |
overwrite |
If |
The input result, invisibly.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: result <- efa_auto(MY_DATA[, 3:14]) export_efa(result, format = "excel", file_name = "EFA.xlsx") ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: result <- efa_auto(MY_DATA[, 3:14]) export_efa(result, format = "excel", file_name = "EFA.xlsx") ## End(Not run)
Fits configural, metric, scalar and strict multi-group CFA models using native lavaan CFA calls and their default marker identification. WLSMV/ULSMV default to ordered responses; only the four requested stages are fitted. The function automates estimator selection and syntax construction while keeping identification, fit variants, admissibility, and model-comparison evidence available for inspection. Fit-change cutoffs are descriptive heuristics, not proof of invariance.
factorial_invariance_auto( data, group, model, language = c("eng", "esp"), estimator = "auto", ordered = NULL, report = FALSE, criteria = "auto", missing = "auto", min_group_n = 20L, overwrite = FALSE, digits = 3, file_name = NULL, format = "excel", verbose = TRUE, fit_variant = c("scaled", "robust") )factorial_invariance_auto( data, group, model, language = c("eng", "esp"), estimator = "auto", ordered = NULL, report = FALSE, criteria = "auto", missing = "auto", min_group_n = 20L, overwrite = FALSE, digits = 3, file_name = NULL, format = "excel", verbose = TRUE, fit_variant = c("scaled", "robust") )
data |
A data frame, matrix, or |
group |
A grouping-column name or symbol, one positive column index, or a vector with one value per original row. |
model |
One lavaan CFA model string. |
language |
Output language, Spanish ( |
estimator |
|
ordered |
|
report |
|
criteria |
|
missing |
|
min_group_n |
Operational minimum analytic group size. The default of 20 does not guarantee power, identification, or stable estimation. |
overwrite |
Whether an existing explicit report path may be replaced. |
digits |
Decimal places in console and reports; stored values keep full precision. |
file_name |
Optional base path for exported files. When |
format |
Report format: |
verbose |
If |
fit_variant |
|
An object of classes factorial_invariance_auto and
psychomatic_result. Raw values are not rounded. Direct legacy aliases are
retained; $warnings is now a structured data frame and $warnings_list
(also $notes) is the character compatibility view.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" factorial_invariance_auto(MY_DATA, group = "Country", model = model) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" factorial_invariance_auto(MY_DATA, group = "Country", model = model) ## End(Not run)
Runs alignment optimization from loading and intercept matrices (lambda and
nu) or from item-level data with a grouping vector.
inv_align_auto( lambda = NULL, nu = NULL, data = NULL, group = NULL, sampling_weights = NULL, wgt = NULL, language = c("eng", "esp"), model = c("2PM", "1PM"), align.scale = c(lambda = 0.4, nu = 0.2), align.pow = c(lambda = 0.25, nu = 0.25), parm_tol = NULL, noninvariance_cutoff = 25, center = FALSE, optimizer = "optim", fixed = NULL, meth = 1, eps = 0.001, vcov = NULL, digits = 3, config_args = list(), alignment_args = list(), report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )inv_align_auto( lambda = NULL, nu = NULL, data = NULL, group = NULL, sampling_weights = NULL, wgt = NULL, language = c("eng", "esp"), model = c("2PM", "1PM"), align.scale = c(lambda = 0.4, nu = 0.2), align.pow = c(lambda = 0.25, nu = 0.25), parm_tol = NULL, noninvariance_cutoff = 25, center = FALSE, optimizer = "optim", fixed = NULL, meth = 1, eps = 0.001, vcov = NULL, digits = 3, config_args = list(), alignment_args = list(), report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )
lambda, nu
|
Parameter matrices for loadings and intercepts. |
data |
Item-level data used when |
group |
Grouping vector associated with |
sampling_weights |
Optional sampling weights, one per row. |
wgt |
Optional weights for the alignment procedure. |
language |
Report language: |
model |
Model type for the configural alignment step. |
align.scale, align.pow, parm_tol
|
Alignment tuning parameters. |
noninvariance_cutoff |
Percentage used to flag non-invariance. |
center, optimizer, fixed, meth, eps, vcov
|
Advanced algorithm parameters. |
digits |
Number of decimal places used in the report. |
config_args |
Additional arguments for the configural step. |
alignment_args |
Additional arguments for the alignment step. |
report |
If |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
Object of class inv_align_auto_result.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: inv_align_auto(data = MY_DATA[, 28:39], group = MY_DATA$Country, language = "eng") ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: inv_align_auto(data = MY_DATA[, 28:39], group = MY_DATA$Country, language = "eng") ## End(Not run)
Fits a complete target invariance stage and a matched partial stage using explicit, researcher-justified parameter releases. The function automates the lengthy lavaan/semTools syntax while deliberately avoiding automated modification-index searches or iterative freeing.
invariance_partial( data, group, model, free, rationale, stage = "scalar", measurement = "auto", estimator = "auto", ordered = NULL, criteria = "auto", min_anchor_items = 2L, report = FALSE, language = "eng", digits = 3, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE, fit_variant = c("scaled", "robust"), workflow = c("factorial", "ordinal"), missing = "auto", min_group_n = 20L )invariance_partial( data, group, model, free, rationale, stage = "scalar", measurement = "auto", estimator = "auto", ordered = NULL, criteria = "auto", min_anchor_items = 2L, report = FALSE, language = "eng", digits = 3, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE, fit_variant = c("scaled", "robust"), workflow = c("factorial", "ordinal"), missing = "auto", min_group_n = 20L )
data |
A data frame, matrix, or |
group |
Group column name/symbol/index or a vector with one value per row. |
model |
A first-order lavaan measurement model. |
free |
Canonical parameter expressions to release, supplied as a character vector or a family-named list. |
rationale |
Required substantive rationale, either one global value or an exactly expression-named character vector. |
stage |
Target stage: |
measurement |
Assertion ( |
estimator |
Estimator passed through the complete-invariance engine. |
ordered |
Ordered-item assertion accepted by the complete-invariance engine. |
criteria |
Fit-change criteria accepted by
|
min_anchor_items |
Minimum number of fully constrained anchor items per first-order factor; must be an integer of at least two. |
report |
|
language |
Presentation language, |
digits |
Decimal places in console and reports; stored values keep full precision. |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
fit_variant |
|
workflow |
|
missing |
Missing-data option accepted by |
min_group_n |
Minimum effective group size; default 20. |
Invisibly, an object of classes
psychomatic_invariance_partial and psychomatic_result.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" # Continuous indicators; justify the freed intercept before testing. invariance_partial(MY_DATA, group = "Country", model = model, free = "R2 ~ 1", estimator = "ML", rationale = "A preregistered item-wording hypothesis") ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: model <- "F1 =~ R1 + R2 + R3 + R4" # Continuous indicators; justify the freed intercept before testing. invariance_partial(MY_DATA, group = "Country", model = model, free = "R2 ~ 1", estimator = "ML", rationale = "A preregistered item-wording hypothesis") ## End(Not run)
Fits a one-dimensional Rasch, 2PL, or graded response model using mirt.
The dependency is optional and is loaded only when this function is called.
irt_auto( data, model = c("auto", "rasch", "2pl", "grm"), factors = 1, itemtype = NULL, technical = list(), language = c("eng", "esp"), digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )irt_auto( data, model = c("auto", "rasch", "2pl", "grm"), factors = 1, itemtype = NULL, technical = list(), language = c("eng", "esp"), digits = 3, report = FALSE, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )
data |
Data frame or matrix containing item responses. |
model |
IRT model: |
factors |
Number of latent dimensions passed to |
itemtype |
Optional |
technical |
Optional technical arguments passed to |
language |
Interpretation language: |
digits |
Number of decimal places used in interpretation tables. |
report |
If |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
A list of class psychomatic_irt with fitted model, item
parameters, item-level interpretation, a model-level summary, and
supporting APA 7 references.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: irt_auto(MY_DATA[, 3:14]) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: irt_auto(MY_DATA[, 3:14]) ## End(Not run)
Optionally runs unique variable analysis before EGA (by default Spearman, EBICglasso and consensus Louvain), revised network loadings, TEFI, wording and hierarchy diagnostics, structural bootstrap and group comparisons. Optional packages are required only for requested stages. See the network workflow vignette for assumptions.
network_auto( data, items = NULL, group = NULL, reverse = NULL, ranges = NULL, uva = NULL, uva_cutoff = 0.25, corr = c("spearman", "pearson", "polychoric"), gamma = 0.5, missing = c("listwise", "pairwise"), wording = TRUE, hierarchy = TRUE, bootstrap = TRUE, invariance = TRUE, n_boot = 1000L, n_perm = 5000L, consensus_iter = 1000L, n_cores = 1L, seed = NULL, language = "eng", report = FALSE, format = "excel", file_name = NULL, overwrite = FALSE, digits = 3L, verbose = TRUE, model = c("glasso", "TMFG", "BGGM"), algorithm = c("louvain", "leiden", "walktrap"), bootstrap_type = c("resampling", "parametric") )network_auto( data, items = NULL, group = NULL, reverse = NULL, ranges = NULL, uva = NULL, uva_cutoff = 0.25, corr = c("spearman", "pearson", "polychoric"), gamma = 0.5, missing = c("listwise", "pairwise"), wording = TRUE, hierarchy = TRUE, bootstrap = TRUE, invariance = TRUE, n_boot = 1000L, n_perm = 5000L, consensus_iter = 1000L, n_cores = 1L, seed = NULL, language = "eng", report = FALSE, format = "excel", file_name = NULL, overwrite = FALSE, digits = 3L, verbose = TRUE, model = c("glasso", "TMFG", "BGGM"), algorithm = c("louvain", "leiden", "walktrap"), bootstrap_type = c("resampling", "parametric") )
data |
Numeric/ordered item data or a |
items |
Item columns; defaults to eligible columns, excluding |
group |
Group column (e.g., sex), or declared in the specification. |
reverse |
Known reverse-keyed item columns. Never inferred from signs. |
ranges |
Theoretical response ranges for reverse items. |
uva |
NULL (default) skips UVA entirely. |
uva_cutoff |
Weighted topological overlap threshold, default .25. |
corr |
|
gamma |
EBIC penalty, default .5. |
missing |
|
wording |
Run riEGA on original, unrecoded responses. |
hierarchy |
Run hierEGA and evaluate identifiable CFA candidates. |
bootstrap |
Run bootEGA and bootnet accuracy/case-drop analyses. |
invariance |
Run NCT and EGA loading permutation tests if a group exists. |
n_boot |
Replications per bootstrap analysis, default 1000. |
n_perm |
Permutations per comparison, default 5000. |
consensus_iter |
Louvain consensus iterations, default 1000. |
n_cores |
Workers for bootEGA, bootnet and loading permutations, default 1. NCT remains sequential in the supported version. |
seed |
Optional integer-valued seed. NULL (default) draws an analysis seed
from the session RNG and records it in |
language |
|
report |
Export a report, logical or output path. |
format |
Report format(s), |
file_name |
Report output basename/path. |
overwrite |
Allow overwriting existing report files, default FALSE. |
digits |
Display precision; numerical results retain full precision. |
verbose |
Print stage progress, elapsed time and the analysis summary. |
model |
Network estimator: |
algorithm |
Community detection: |
bootstrap_type |
bootEGA bootstrap: |
The default console and reports emphasize communities, structural
consistency and group comparisons. Non-significance does not establish
equivalence. Complete diagnostic tables remain in the object and can be
displayed with print(fit, detail="audit") or exported with
psychomatic_report(fit, detail="audit"). APA reference italics are shared
across analyses in Word, Excel and compatible interactive consoles; plain
logs retain unformatted text. options(PsychoMatic.ansi=FALSE) disables
console styling; TRUE forces it for terminals supporting ANSI italics.
A psychomatic_network and psychomatic_result object. Failed optional
stages remain explicit in results$stages and errors; partial results are
never described as a completed analysis. Original responses remain available
in diagnostics$input but are excluded from reader-facing reports.
## Not run: fit <- network_auto(MY_DATA, items = 1:12, group = "sex") plot(fit, type = "network") psychomatic_report(fit, format = c("word", "excel"), file_name = "network") ## End(Not run)## Not run: fit <- network_auto(MY_DATA, items = 1:12, group = "sex") plot(fit, type = "network") psychomatic_report(fit, format = c("word", "excel"), file_name = "network") ## End(Not run)
Export publication figures from cached network results
network_plots( x, directory = NULL, types = NULL, formats = c("pdf", "png"), language = NULL, width = 10, height = 7, dpi = 300, overwrite = FALSE, label_cex = 1.2 )network_plots( x, directory = NULL, types = NULL, formats = c("pdf", "png"), language = NULL, width = 10, height = 7, dpi = 300, overwrite = FALSE, label_cex = 1.2 )
x |
A |
directory |
Existing output directory (created if absent). |
types |
Figure types; NULL selects relevant publication figures,
omitting unavailable wording diagnostics and descriptive TEFI/centrality
figures. Supply |
formats |
File formats, one or more of |
language |
|
width, height
|
Figure dimensions in inches. |
dpi |
PNG resolution, default 300. |
overwrite |
Allow existing files to be overwritten. |
label_cex |
Node label size multiplier, default 1.2. Increase for figures that will be reduced to a small publication width. |
Invisibly, paths of exported figures; without directory, available types.
Fits configural, equal-threshold, and equal-threshold-and-loading models using
theta parameterization and Wu and Estabrook (2016) identification via
semTools::measEq.syntax(), as illustrated by Svetina et al. (2020).
All indicators must be ordinal. Binary or three-category indicators can make
a separate threshold comparison untestable; such stages are explicitly marked
as not independently identified rather than accepted as invariant.
ordinal_invariance_auto( data, group, model, language = c("eng", "esp"), estimator = "auto", ordered = NULL, report = FALSE, criteria = "auto", missing = "auto", min_group_n = 20L, overwrite = FALSE, digits = 3, file_name = NULL, format = "excel", verbose = TRUE, fit_variant = c("scaled", "robust") )ordinal_invariance_auto( data, group, model, language = c("eng", "esp"), estimator = "auto", ordered = NULL, report = FALSE, criteria = "auto", missing = "auto", min_group_n = 20L, overwrite = FALSE, digits = 3, file_name = NULL, format = "excel", verbose = TRUE, fit_variant = c("scaled", "robust") )
data |
A data frame, matrix, or |
group |
A grouping-column name or symbol, one positive column index, or a vector with one value per original row. |
model |
One lavaan CFA model string. |
language |
Output language, Spanish ( |
estimator |
|
ordered |
|
report |
|
criteria |
|
missing |
|
min_group_n |
Operational minimum analytic group size. The default of 20 does not guarantee power, identification, or stable estimation. |
overwrite |
Whether an existing explicit report path may be replaced. |
digits |
Decimal places in console and reports; stored values keep full precision. |
file_name |
Optional base path for exported files. When |
format |
Report format: |
verbose |
If |
fit_variant |
|
Changes are signed differences (current minus preceding evaluable model). Chen (2007) guidelines are descriptive extrapolations to ordinal estimation, not ordinal-specific validated cutoffs: a CFI decline exceeding .010 together with an RMSEA increase exceeding .015 or SRMR increase exceeding .030 (adding loadings) / .010 (thresholds) signals lack of support. Configural fit and admissibility are checked first. Custom criteria can be supplied.
A result with classes ordinal_invariance_auto,
factorial_invariance_auto, and psychomatic_result, including raw fitted
models, identification diagnostics, fit changes, and bilingual reports.
Wu, H., & Estabrook, R. (2016). Identification of confirmatory factor analysis models of different levels of invariance for ordered categorical outcomes. Psychometrika, 81(4), 1014-1045. doi:10.1007/s11336-016-9506-0
Svetina, D., Rutkowski, L., & Rutkowski, D. (2020). Multiple-group invariance with categorical outcomes using updated guidelines: An illustration using Mplus and the lavaan/semTools packages. Structural Equation Modeling: A Multidisciplinary Journal, 27(1), 111-130. doi:10.1080/10705511.2019.1602776
Chen, F. F. (2007). Sensitivity of goodness of fit indexes to lack of measurement invariance. Structural Equation Modeling: A Multidisciplinary Journal, 14(3), 464-504. doi:10.1080/10705510701301834
## Not run: ordinal_invariance_auto(MY_DATA, group = "Sexo", model = "F =~ R1 + R2 + R3 + R4", ordered = TRUE, estimator = "WLSMV", report = TRUE, format = c("word", "excel")) ## End(Not run)## Not run: ordinal_invariance_auto(MY_DATA, group = "Sexo", model = "F =~ R1 + R2 + R3 + R4", ordered = TRUE, estimator = "WLSMV", report = TRUE, format = c("word", "excel")) ## End(Not run)
Plot cached psychometric network results
## S3 method for class 'psychomatic_network' plot(x, type = "network", language = NULL, label_cex = 1.2, ...)## S3 method for class 'psychomatic_network' plot(x, type = "network", language = NULL, label_cex = 1.2, ...)
x |
A |
type |
Figure type. See |
language |
Figure language, defaults to the result language. |
label_cex |
Node label size multiplier, default 1.2. Labels are not automatically shrunk to fit the nodes; use concise item identifiers. |
... |
Reserved for future graphical arguments. |
Invisibly, a qgraph object for "network" and "loadings", or the
underlying results for other figures. No analysis is recomputed.
Print a psychometric network result
## S3 method for class 'psychomatic_network' print(x, detail = c("report", "audit"), ...)## S3 method for class 'psychomatic_network' print(x, detail = c("report", "audit"), ...)
x |
A |
detail |
|
... |
Additional arguments, currently unused. |
x, invisibly.
Collects tables from PsychoMatic result objects and writes an Excel workbook
and/or Word document. Reports use the user-supplied path or the current
working directory (getwd()) when file_name = NULL.
psychomatic_report( ..., format = "excel", file_name = NULL, language = c("eng", "esp"), digits = 3, overwrite = FALSE, detail = c("report", "audit") )psychomatic_report( ..., format = "excel", file_name = NULL, language = c("eng", "esp"), digits = 3, overwrite = FALSE, detail = c("report", "audit") )
... |
Named PsychoMatic result objects or data frames. Supported objects
include outputs from |
format |
Output format: |
file_name |
Output path or base path. If |
language |
Report language: |
digits |
Number of decimal places for numeric tables. |
overwrite |
If |
detail |
|
Output path, invisibly. When both formats are requested, returns a
named character vector. Excel output carries a sheet_map attribute that
records requested and effective worksheet names.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: result <- reliability_auto(MY_DATA[, 3:6]) psychomatic_report(reliability = result, format = "word", file_name = "Report.docx") ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: result <- reliability_auto(MY_DATA[, 3:6]) psychomatic_report(reliability = result, format = "word", file_name = "Report.docx") ## End(Not run)
Selects item columns without silently treating identifiers or unordered categories as measurements. It records item order, measurement levels, ordinal encodings, reverse keys, ranges, grouping, metadata, missing-data policy, language, and the decisions used to build the specification.
psychomatic_spec( data, items = NULL, metadata = NULL, level = "auto", ordinal_levels = NULL, reverse = NULL, ranges = NULL, group = NULL, missing = "available", language = "eng" )psychomatic_spec( data, items = NULL, metadata = NULL, level = "auto", ordinal_levels = NULL, reverse = NULL, ranges = NULL, group = NULL, missing = "available", language = "eng" )
data |
A data frame or matrix containing item responses and optional metadata/group columns. |
items |
Item column names or positive integer indices. If |
metadata |
Optional metadata column names or positive integer indices. |
level |
Measurement level: |
ordinal_levels |
Optional uniquely named list giving the ordered levels
for selected items. Declared levels take precedence over |
reverse |
Optional item names or positive integer indices identifying reverse-keyed items. This records keys; it does not transform responses. |
ranges |
Optional uniquely named list of numeric vectors |
group |
Optional single group-column name or positive integer index. |
missing |
Character scalar recording the missing-data policy. The
default is |
language |
Output language, |
With level = "auto", ordered factors are ordinal. Ordinary
numeric columns with two through seven distinct finite integer values are
ordinal; other varying numeric columns are continuous. Unordered factors,
character vectors, and logical vectors are ambiguous and are never sorted
alphabetically. Explicit ordinal_levels take precedence over an explicit
per-item level, which in turn takes precedence over automatic
classification.
When items = NULL, a candidate is treated as a possible identifier if
its normalized name contains id, case, participant, or respondent,
if at least 95 percent of its finite numeric values are unique, or if those
values form a strictly monotone integer sequence. The function then stops
and asks for an explicit items or metadata declaration.
An object of classes psychomatic_spec and psychomatic_result.
In addition to the common result-contract fields, direct fields expose
data, the pre-mapping raw_data, items, measurement_level,
ordinal_levels, reverse, ranges, group, metadata, missing,
and language.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: psychomatic_spec(MY_DATA, items = c("R1", "R2", "R3", "R4")) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: psychomatic_spec(MY_DATA, items = c("R1", "R2", "R3", "R4")) ## End(Not run)
Computes reliability coefficients while keeping the statistical estimand,
response matrix, reverse-keying decision, and evaluability status explicit.
Continuous responses receive observed-score alpha; ordinal responses also
receive alpha from a named polychoric matrix. A fitted lavaan model adds
composite reliability and average variance extracted through current
semTools APIs when that suggested package is installed.
Without a supplied model, omega fits a single congeneric factor (ML for
continuous items; WLSMV for ordinal items). Ordinal omega refers to the
observed response score using the Green and Yang correction; ordinal alpha
refers to latent responses. This assumption requires substantive assessment.
Alpha uses pairwise covariances. Omega uses complete cases, refitted after
each item deletion; item-rest correlations use complete cases on all items.
Deletion alpha uses the corresponding submatrix of the full-scale matrix.
reliability_auto( data, items = NULL, level = "auto", model = NULL, report = FALSE, language = "eng", digits = 3, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )reliability_auto( data, items = NULL, level = "auto", model = NULL, report = FALSE, language = "eng", digits = 3, file_name = NULL, format = "excel", overwrite = FALSE, verbose = TRUE )
data |
A data frame, matrix, or |
items |
Optional item names or positive indices. Must be |
level |
Measurement level passed to |
model |
Optional fitted |
report |
If |
language |
Output language, |
digits |
Decimal places in console and reports; stored values keep full precision. |
file_name |
Optional base path for exported files. When |
format |
Report format: |
overwrite |
If |
verbose |
If |
An object of classes psychomatic_reliability and
psychomatic_result.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: reliability_auto(MY_DATA[, 3:14]) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: reliability_auto(MY_DATA[, 3:14]) ## End(Not run)
Reverses item scores using either a user-defined score range or the observed range of the selected items. Items can be selected explicitly or detected from negative item-rest correlations.
reverse_items( data, items = NULL, min_score = NULL, max_score = NULL, suffix = "_r", overwrite = FALSE, detect = FALSE )reverse_items( data, items = NULL, min_score = NULL, max_score = NULL, suffix = "_r", overwrite = FALSE, detect = FALSE )
data |
Data frame or matrix containing item responses. |
items |
Character vector of item names to reverse. Required unless
|
min_score, max_score
|
Optional theoretical score range. If omitted, the observed range among selected items is used. |
suffix |
Suffix used for reversed columns when |
overwrite |
If |
detect |
If |
Repeated selections are applied once. Non-missing responses must be finite and fall within the effective scoring range. When reversed columns are appended, an existing target name is treated as a collision and is never overwritten silently.
A data frame with attributes reversed_items and reverse_range.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: reverse_items(MY_DATA, items = c("R2", "R4"), min_score = 1, max_score = 5) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: reverse_items(MY_DATA, items = c("R2", "R4"), min_score = 1, max_score = 5) ## End(Not run)
Computes scale scores using sum or mean scoring, optional reverse scoring, optional person-mean imputation, and a minimum valid-response rule.
score_scale( data, keys = NULL, items = NULL, method = c("mean", "sum"), min_valid = 0.8, impute = c("none", "person_mean"), reverse = NULL, min_score = NULL, max_score = NULL )score_scale( data, keys = NULL, items = NULL, method = c("mean", "sum"), min_valid = 0.8, impute = c("none", "person_mean"), reverse = NULL, min_score = NULL, max_score = NULL )
data |
Data frame or matrix containing item responses. |
keys |
Named list where each element contains the item names for one
scale. If |
items |
Optional item names used when |
method |
Scoring method: |
min_valid |
Minimum number or proportion of valid item responses required to compute a scale score. |
impute |
Missing-data handling: |
reverse |
Optional character vector of items to reverse before scoring. |
min_score, max_score
|
Optional score range used when |
Eligible incomplete rows are prorated: mean scores use the available
item mean and sum scores multiply that mean by the scale length. Missing
values may remain NA, but non-finite responses are rejected before any
scale is scored. Duplicate display labels receive stable unique keys
recorded in scale_map.
A list of class psychomatic_scores with score and reliability
tables and a scale_map linking unique keys to display labels.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: score_scale(MY_DATA, items = c("R1", "R2", "R3", "R4")) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: score_scale(MY_DATA, items = c("R1", "R2", "R3", "R4")) ## End(Not run)
Computes a compact item-screening table for numeric psychometric items: missingness, variance, distribution shape, floor and ceiling proportions, item-rest correlations, and probable reverse-keyed items.
screen_items( data, digits = 3, floor_cutoff = 0.8, ceiling_cutoff = 0.8, min_item_rest = -0.1, language = "eng", report = FALSE, format = "excel", file_name = NULL, overwrite = FALSE, verbose = TRUE )screen_items( data, digits = 3, floor_cutoff = 0.8, ceiling_cutoff = 0.8, min_item_rest = -0.1, language = "eng", report = FALSE, format = "excel", file_name = NULL, overwrite = FALSE, verbose = TRUE )
data |
Data frame or matrix containing item responses. |
digits |
Number of decimal places used in the returned table. |
floor_cutoff |
Proportion at the minimum score used to flag floor effects. |
ceiling_cutoff |
Proportion at the maximum score used to flag ceiling effects. |
min_item_rest |
Item-rest correlation below which an item is flagged as probably reverse keyed or inconsistent with the remaining items. |
language |
Output language: |
report |
Generate a report, or supply an output path. |
format |
Report format: |
file_name |
Output file name, without extension when using both formats. |
overwrite |
Allow replacing an existing report (default |
verbose |
Show results directly in the console (default |
Displayed percentages are on a 0–100 scale. The returned data frame retains its original English column names and 0–1 proportions for compatibility.
A data frame of class psychomatic_item_screen.
# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: screen_items(MY_DATA[, 3:14]) ## End(Not run)# Replace MY_DATA with your data frame and adapt the item names or columns. ## Not run: screen_items(MY_DATA[, 3:14]) ## End(Not run)