| name | pointblank |
| description | R pointblank package for data quality. Use for data validation and quality reporting. |
pointblank
Data quality assessment and reporting.
Create Agent
library(pointblank)
agent <- create_agent(df) %>%
col_vals_gt(vars(age), 0) %>%
col_vals_lt(vars(age), 120) %>%
col_vals_not_null(vars(name)) %>%
col_is_numeric(vars(income)) %>%
interrogate()
agent
Validation Functions
agent <- create_agent(df) %>%
col_vals_gt(vars(x), 0) %>%
col_vals_gte(vars(x), 0) %>%
col_vals_lt(vars(x), 100) %>%
col_vals_lte(vars(x), 100) %>%
col_vals_equal(vars(x), 1) %>%
col_vals_not_equal(vars(x), 0) %>%
col_vals_between(vars(x), 0, 100) %>%
col_vals_in_set(vars(status), c("A", "B", "C")) %>%
col_vals_not_in_set(vars(status), c("X", "Y")) %>%
col_vals_null(vars(x)) %>%
col_vals_not_null(vars(x)) %>%
col_vals_regex(vars(email), "^[a-z]+@") %>%
interrogate()
Column Checks
agent <- create_agent(df) %>%
col_is_numeric(vars(age)) %>%
col_is_character(vars(name)) %>%
col_is_date(vars(date)) %>%
col_is_logical(vars(flag)) %>%
col_exists(vars(id, name, age)) %>%
interrogate()
Row Checks
agent <- create_agent(df) %>%
row_count_match(100) %>%
rows_distinct() %>%
rows_complete() %>%
interrogate()
Actions
al <- action_levels(
warn_at = 0.1,
stop_at = 0.25,
notify_at = 0.05
)
agent <- create_agent(df, actions = al) %>%
col_vals_not_null(vars(id)) %>%
interrogate()
Reporting
get_agent_report(agent)
export_report(agent, filename = "report.html")
get_agent_x_list(agent)
Informant
informant <- create_informant(df) %>%
info_tabular(
description = "Customer data"
) %>%
info_columns(
columns = vars(id),
info = "Unique identifier"
) %>%
incorporate()
YAML Workflow
yaml_write(agent, filename = "validation.yaml")
agent <- yaml_read_agent("validation.yaml") %>%
interrogate()