# Load sample data
data(sample_data)
# === Three Types of QCA Solutions ===
# 1. Complex Solution (default, QCA compatible)
result_comp <- ctSweepS(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2", "X3"),
sweep_var = "X3",
sweep_range = 7,
thrY = 7,
thrX_default = 7
# include = "" (default), dir.exp = NULL (default)
)
head(result_comp$summary)
# 2. Parsimonious Solution (include = "?")
result_pars <- ctSweepS(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2", "X3"),
sweep_var = "X3",
sweep_range = 7,
thrY = 7,
thrX_default = 7,
include = "?" # Include logical remainders
)
head(result_pars$summary)
# 3. Intermediate Solution (include = "?" + dir.exp)
result_int <- ctSweepS(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2", "X3"),
sweep_var = "X3",
sweep_range = 7,
thrY = 7,
thrX_default = 7,
include = "?",
dir.exp = c(1, 1, 1) # All conditions expected positive
)
head(result_int$summary)
# === Threshold Sweep Example ===
# Run single condition threshold sweep on X3 (complex solutions by default)
result <- ctSweepS(
dat = sample_data,
outcome = "Y",
conditions = c("X1", "X2", "X3"),
sweep_var = "X3",
sweep_range = 6:8,
thrY = 7,
thrX_default = 7
)
head(result$summary)
# Run with negated outcome (~Y)
result_neg <- ctSweepS(
dat = sample_data,
outcome = "~Y",
conditions = c("X1", "X2", "X3"),
sweep_var = "X3",
sweep_range = 6:8,
thrY = 7,
thrX_default = 7
)
head(result_neg$summary)
Run the code above in your browser using DataLab