## Full workflow using itemExclusionTuples
# Example data.frame
items <- data.frame(ID = c("items1", "items2", "items3", "items4"),
exclusions = c("items2, items3", NA, NA, NA),
stringsAsFactors = FALSE)
# Create tuples
exTuples2 <- itemTuples(items = items, idCol = "ID", infoCol = "exclusions",
sepPattern = ", ")
#' ## Create constraints
exclusion_constraint <- itemExclusionConstraint(nForms = 2, itemTuples = exTuples2,
itemIDs = items$ID)
depletion_constraint <- depletePoolConstraint(2, nItems = 4,
itemIDs = items$ID)
target_constraint <- minimaxObjective(nForms = 2,
itemValues = c(3, 1.5, 2, 4),
targetValue = 1,
itemIDs = items$ID)
opt_solution <- useSolver(list(exclusion_constraint, target_constraint,
depletion_constraint))
analyzeBlockExclusion(opt_solution, items = items, idCol = "ID",
exclusionTuples = exTuples2)
Run the code above in your browser using DataLab