Meant for use in a data analysis pipeline, this function applies a function to a data frame that reduces each row to a single value. Then, a predicate function is applied to each of the row reduction values. If any of these predicate applications yield FALSE, this function will raise an error, effectively terminating the pipeline early. If there are no FALSEs, this function will just return the data that it was supplied for further use in later parts of the pipeline.
assert_rows(
data,
row_reduction_fn,
predicate,
...,
success_fun = success_continue,
error_fun = error_stop,
skip_chain_opts = FALSE,
obligatory = FALSE,
defect_fun = defect_append,
description = NA
)
By default, the data
is returned if predicate assertion
is TRUE and and error is thrown if not. If a non-default
success_fun
or error_fun
is used, the return
values of these function will be returned.
A data frame
A function that returns a value for each row of the provided data frame
A function that returns FALSE when violated
Comma separated list of unquoted expressions.
Uses dplyr's select
to select
columns from data.
Function to call if assertion passes. Defaults to
returning data
.
Function to call if assertion fails. Defaults to printing a summary of all errors.
If TRUE, success_fun
and error_fun
are used even if assertion is called within a chain.
If TRUE and assertion failed the data is marked as defective.
For defective data, all the following rules are handled by
defect_fun
function.
Function to call when data is defective. Defaults to skipping assertion and storing info about it in special attribute.
Custom description of the rule. Is stored in result reports and data.
For examples of possible choices for the success_fun
and
error_fun
parameters, run help("success_and_error_functions")
insist_rows
assert
verify
insist