Evaluates all cut expressions once and caches results to avoid redundant evaluation. Much faster than evaluating repeatedly.
evaluate_cuts_once(confs, df, details = FALSE)List with:
evaluations: List of evaluated vectors (logical TRUE/FALSE) for each cut
is_valid: Logical vector indicating which cuts produced >1 unique value
has_error: Logical vector indicating which cuts failed to evaluate
Character vector of cut expressions.
Data frame to evaluate expressions against.
Logical. Print details during execution.
This replaces multiple eval(parse()) calls scattered throughout get_FSdata. By caching results, we avoid:
Repeated parsing of expressions
Repeated evaluation on dataframe
Redundant uniqueness checks