Evaluates a set of values against acceptance criteria and returns a detailed assessment table with pass/fail status.
Usage
measure_assess(data, criteria, action = c("return", "warn", "error"))Arguments
- data
A named list or data frame containing the values to assess. Names must match criterion names.
- criteria
A
measure_criteria()object defining the acceptance criteria.- action
What to do on failure:
"return"(default) returns the assessment table,"warn"issues a warning for failures,"error"stops on any critical failures.
Value
A tibble with class measure_assessment containing:
criterion: Name of the criterionvalue: The observed valuethreshold: The threshold value(s)operator: The comparison operatorpass: Logical indicating pass/failpriority: Priority level of the criteriondescription: Human-readable description
See also
measure_criteria() for creating criteria,
criterion() for individual criteria.
Examples
# Define criteria
crit <- measure_criteria(
cv_qc = list("<", 15),
r_squared = list(">=", 0.99),
recovery = list("between", c(80, 120))
)
# Assess results
results <- list(cv_qc = 12.5, r_squared = 0.995, recovery = 98.2)
measure_assess(results, crit)
#> <measure_assessment> [PASS]
#> 3 passed, 0 failed
#>
#> ✓ cv_qc: 12.5 (< 15)
#> ✓ r_squared: 0.995 (>= 0.99)
#> ✓ recovery: 98.2 (between [80, 120])
# Assess with some failures
results_bad <- list(cv_qc = 18.3, r_squared = 0.985, recovery = 75)
measure_assess(results_bad, crit)
#> <measure_assessment> [FAIL]
#> 0 passed, 3 failed
#>
#> ✗ cv_qc: 18.3 (< 15)
#> ✗ r_squared: 0.985 (>= 0.99)
#> ✗ recovery: 75 (between [80, 120])