# Load sample data
data(sample_data)
# === Three Types of QCA Solutions ===
# Quick demonstration with 2 conditions
sweep_list <- list(X1 = 7, X2 = 7)
# 1. Complex Solution (default, QCA compatible)
result_comp <- ctSweepM(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2"),
sweep_list = sweep_list,
thrY = 7
# include = "" (default), dir.exp = NULL (default)
)
head(result_comp$summary)
# 2. Parsimonious Solution (include = "?")
result_pars <- ctSweepM(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2"),
sweep_list = sweep_list,
thrY = 7,
include = "?" # Include logical remainders
)
head(result_pars$summary)
# 3. Intermediate Solution (include = "?" + dir.exp)
result_int <- ctSweepM(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2"),
sweep_list = sweep_list,
thrY = 7,
include = "?",
dir.exp = c(1, 1) # Positive expectations
)
head(result_int$summary)
# === Threshold Sweep Example ===
# Using 2 conditions and 2 threshold levels
sweep_list <- list(
X1 = 6:7,
X2 = 6:7
)
# Run multiple condition threshold sweep (complex solutions by default)
result_quick <- ctSweepM(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2"),
sweep_list = sweep_list,
thrY = 7
)
head(result_quick$summary)
# Run with negated outcome (~Y)
result_neg <- ctSweepM(
dat = sample_data,
outcome = "~Y",
conditions = c("X1", "X2"),
sweep_list = sweep_list,
thrY = 7
)
head(result_neg$summary)
# \donttest{
# Full multi-condition analysis (27 combinations)
sweep_list_full <- list(
X1 = 6:8,
X2 = 6:8,
X3 = 6:8
)
result_full <- ctSweepM(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2", "X3"),
sweep_list = sweep_list_full,
thrY = 7
)
head(result_full$summary)
# }
Run the code above in your browser using DataLab