% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/qcaERT-package.R
\docType{package}
\name{qcaERT-package}
\alias{qcaERT}
\alias{qcaERT-package}
\title{qcaERT: Enhanced robustness tests for QCA}
\description{
qcaERT extends the usual Qualitative Comparative Analysis (QCA) with tools
for assessing how stable and robust a QCA analysis is. It can test alternative
calibration thresholds, inclusion cutoffs, truth table frequency cutoffs,
case deletion, subsampling, alternative solutions, cluster-specific
analyses and different theoretical configurations. It also offers a compact way to organize and visualize QCA
solutions.
The package is built around the QCA package (Dusa 2019) workflow using
\code{\link[QCA:calibrate]{QCA::calibrate()}}, \code{\link[QCA:truthTable]{QCA::truthTable()}}, \code{\link[QCA:minimize]{QCA::minimize()}}, and
\code{\link[QCA:findRows]{QCA::findRows()}}. It is not intended to cover every possible QCA variant
or calibration transformation.
}
\section{Start Here}{

If you know the robustness concern but not the function name, start with
\code{?qcaERT_tests}, which maps qcaERT's tools.

A typical R workflow for sufficient analysis using qcaERT is:
\enumerate{
\item calibrate data with \code{\link[QCA:calibrate]{QCA::calibrate()}},
\item build a truth table with \code{\link[QCA:truthTable]{QCA::truthTable()}},
\item minimize with \code{\link[QCA:minimize]{QCA::minimize()}},
\item run one or more qcaERT robustness tests, and
\item inspect \code{print(x)}, \code{as.data.frame(x)}, \code{x$diagnostics}, and, where
available, \code{plot(x)}.
}
}

\section{Function Family}{

The main qcaERT functions are:
\itemize{
\item \code{\link[=calib.test]{calib.test()}} for calibration-threshold robustness.
\item \code{\link[=incl.test]{incl.test()}} for truth table inclusion-cutoff robustness.
\item \code{\link[=ncut.test]{ncut.test()}} for truth table frequency-cutoff robustness.
\item \code{\link[=loo.test]{loo.test()}} for leave-one-out case influence.
\item \code{\link[=subsample.test]{subsample.test()}} for repeated subsample stability (advanced).
\item \code{\link[=altset.test]{altset.test()}} for sampled alternative analysis settings that can
combine calibration, inclusion-cutoff, and frequency-cutoff perturbations.
\item \code{\link[=theory.test]{theory.test()}} for comparing theoretically motivated configurations
using the same outcome, truth-table cutoffs, solution type,
exclusion handling, and model-selection settings.
\item \code{\link[=cluster.test]{cluster.test()}} for cluster, group, or repeated-unit heterogeneity.
\item \code{\link[=sol.df]{sol.df()}} for converting QCA minimization objects into compact
solution tables.
\item \code{\link[=sol.chart]{sol.chart()}} for rendering \code{sol.df()} tables as solution charts.
}
}

\section{Returned Objects}{

Most robustness functions return R objects with a common structure:
\itemize{
\item \code{diagnostics}: the detailed table, useful for inspection and
troubleshooting.
\item \code{results}: a cleaner table.
\item \code{settings}: the analysis settings used to create the result.
\item supporting components such as \code{baseline}, \code{bounds}, \code{by_direction},
\code{by_case}, \code{by_run}, \code{by_draw}, or \code{summary}, depending on the test.
}

\code{print()} gives a concise summary. \code{as.data.frame()} returns the main clean
table. \code{cluster.test()} and \code{theory.test()} use structured \code{results} lists:
\code{cluster.test()} returns \code{overview}, \code{clusters}, and \code{units}, while
\code{theory.test()} returns \code{models}, \code{pairwise}, and \code{solutions}.
}

\section{Common Conventions}{

The family-wide argument and output conventions are described in
\code{?qcaERT_conventions}. It explains solution controls such as \code{solution},
\code{include}, \code{dir.exp}, \code{which_M}, and \code{i_mode}; exclusion handling and its
function-specific exceptions; calibration specifications; and the common
returned-object structure.
}

\section{Plotting}{

Plotting requires \code{ggplot2}. Current plot methods are
available for \code{\link[=calib.test]{calib.test()}}, \code{\link[=incl.test]{incl.test()}}, and \code{\link[=theory.test]{theory.test()}} results.
\code{\link[=sol.chart]{sol.chart()}} provides a visual presentation for \code{\link[=sol.df]{sol.df()}} tables. See
\code{?qcaERT_plots}.
}

\section{Learn More}{

\itemize{
\item \code{?qcaERT_tests} for choosing the right robustness test.
\item \code{?qcaERT_conventions} for common argument and output conventions.
\item \code{?qcaERT_plots} for plotting \code{calib_test}, \code{incl_test}, and
\code{theory_test} objects, and for charting \code{sol.df()} tables.
\item \code{vignette("qcaERT-overview", package = "qcaERT")} for a guided
introduction.
\item \code{vignette("qcaERT-result-objects", package = "qcaERT")} for the
common returned-object structure.
\item \code{vignette("qcaERT-calibration", package = "qcaERT")} for
calibration specifications, scale-aware perturbations, and alternative
sets.
\item \code{news(package = "qcaERT")} for development changes.
\item \code{citation(package = "qcaERT")} for citation information.
}
}

\section{Recommended citation}{

Marisguia, B. A. H. (2026). qcaERT: Enhanced Robustness Tests for
Qualitative Comparative Analysis. R package version 0.1.0.

Please also cite the QCA package and the methodological sources relevant
to the analysis.
}

\references{
Dusa, Adrian. 2019. \emph{QCA with R. A Comprehensive Resource}. Cham:
Springer. \url{https://adriandusa.com/research/books/2019-QCA/}.

Ragin, C. C. 2014. \emph{The Comparative Method: Moving Beyond Qualitative and
Quantitative Strategies}. Oakland, California: University of California
Press.
}
\author{
Breno A. H. Marisguia
}
