Suggest a range check
data.frame
, used to generate the checks
character
optionally the subset of variables to be used.
if TRUE
only numerical values for positive values are included
file to which the checks will be written to.
suggest_pos_check
returns validate::validator()
object with the suggested rules.
write_pos_check
write the rules to file and returns invisibly a named list of checks for each variable.
data(SBS2000, package="validate")
suggest_range_check(SBS2000)
#> Warning: Skipped range check 'id', as it is unique for each record
#> Object of class 'validator' with 10 elements:
#> RC1 : size %in% c("sc0", "sc3", "sc1", "sc2")
#> RC2 : incl.prob >= 0.02
#> RC3 : staff >= 1
#> RC4 : turnover >= 1
#> RC5 : other.rev >= -33
#> RC6 : total.rev >= 25
#> RC7 : staff.costs >= 2
#> RC8 : total.costs >= 22
#> RC9 : profit >= -222
#> RC10: vat >= 41
# checks the ranges of each variable
suggest_range_check(SBS2000[-1], min=TRUE, max=TRUE)
#> Object of class 'validator' with 10 elements:
#> RC1 : size %in% c("sc0", "sc3", "sc1", "sc2")
#> RC2 : in_range(incl.prob, 0.02, 0.14)
#> RC3 : in_range(staff, 1, 75)
#> RC4 : in_range(turnover, 1, 931397)
#> RC5 : in_range(other.rev, -33, 98350)
#> RC6 : in_range(total.rev, 25, 931397)
#> RC7 : in_range(staff.costs, 2, 221302)
#> RC8 : in_range(total.costs, 22, 2725410)
#> RC9 : in_range(profit, -222, 225493)
#> RC10: in_range(vat, 41, 9655)
# checks the ranges of each variable
suggest_range_check(SBS2000, vars=c("turnover", "other.rev"), min=FALSE, max=TRUE)
#> Object of class 'validator' with 2 elements:
#> RC1: turnover <= 931397
#> RC2: other.rev <= 98350