A wrapper for affirm_true()
.
The column, range, and boundaries arguments are used to construct the
affirm_true(condition = column >= range[1] & column <= range[2])
argument.
Arguments
- data
a data frame
- label
a string used to describe the affirmation
- column
a single column to check values of
- range
vector of length two indicating the upper and lower bounds of the range. The class of the
range
must be compatible with thecolumn
, e.g. ifcolumn
is numeric,range
must also be numeric; ifcolumn
is a date, range must be a date; ifcolumn
is an integer,range
must be an integer, etc.- boundaries
logical vector of length 2 indicating whether to include UB and LB in the range check. Default is
c(TRUE, TRUE)
- id, priority, data_frames
Optional additional information that will be passed to affirmation report.
id
must be an integer, e.g.id = 1L
priority
must be an integer, e.g.priority = 1L
data_frames
string of data frame names used in affirmation, e.g.data_frames = "RAND, DM"
- report_listing
an expression selecting/filtering rows from
data=
to return in the issue listing report. The default is to return the result fromcreate_report_listing()
, which are the rows that do not met incondition=
and columns included in thecondition=
expression along with any columns set inoption('affirm.id_cols')
. The'affirm.id_cols'
option must be a character vector of column names, where columns will be selected withselect(any_of(getOption('affirm.id_cols')))
.- data_action
this expression is executed at the end of the function call when supplied.
Default is NULL, and the passed data frame in
data=
is returned unaltered.Perhaps you'll need to remove problematic rows:
data_action = filter(., !(!!condition))
- error
Logical indicating whether to throw an error when condition is not met. Default is
FALSE
.
See also
Other Data Affirmations:
affirm_false()
,
affirm_na()
,
affirm_no_dupes()
,
affirm_true()
,
affirm_values()
Examples
affirm_init(replace = TRUE)
#> ✔ We're ready to make data affirmations...
as_tibble(mtcars) |>
affirm_range(
label = "MPG is >0 and <=30",
column = mpg,
range = c(0, 30),
boundaries = c(FALSE, TRUE)
)
#> • MPG is >0 and <=30
#> 4 issues identified.
#> # A tibble: 32 × 11
#> mpg cyl disp hp drat wt qsec vs am gear carb
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 21 6 160 110 3.9 2.62 16.5 0 1 4 4
#> 2 21 6 160 110 3.9 2.88 17.0 0 1 4 4
#> 3 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1
#> 4 21.4 6 258 110 3.08 3.22 19.4 1 0 3 1
#> 5 18.7 8 360 175 3.15 3.44 17.0 0 0 3 2
#> 6 18.1 6 225 105 2.76 3.46 20.2 1 0 3 1
#> 7 14.3 8 360 245 3.21 3.57 15.8 0 0 3 4
#> 8 24.4 4 147. 62 3.69 3.19 20 1 0 4 2
#> 9 22.8 4 141. 95 3.92 3.15 22.9 1 0 4 2
#> 10 19.2 6 168. 123 3.92 3.44 18.3 1 0 4 4
#> # ℹ 22 more rows
affirm_close()