## ----setup, include=FALSE----------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----load-package------------------------------------------------------------- library(DataAudit) ## ----example-data------------------------------------------------------------- dat <- data.frame( ID = c( "A001", "A002", "A002", "BAD", "A005" ), Species = c( "Dog", "Horse", "", "Cat", "Dog" ), Age = c( 5, 40, -2, 10, NA ), stringsAsFactors = FALSE ) dat ## ----general-audit------------------------------------------------------------ report <- audit_data( dat, include_nzv = FALSE ) report ## ----report-class------------------------------------------------------------- class(report) ## ----report-components-------------------------------------------------------- names(report) ## ----overview----------------------------------------------------------------- report$overview ## ----variable-results--------------------------------------------------------- report$variables ## ----duplicates--------------------------------------------------------------- report$duplicates ## ----missing-check------------------------------------------------------------ missing_check(dat) ## ----blank-check-------------------------------------------------------------- blank_check(dat) ## ----range-check-------------------------------------------------------------- range_check( dat, variable = "Age", min = 0, max = 30 ) ## ----category-check----------------------------------------------------------- category_check( dat, variable = "Species", allowed = c( "Dog", "Cat" ) ) ## ----unique-check------------------------------------------------------------- unique_check( dat, variable = "ID" ) ## ----pattern-check------------------------------------------------------------ pattern_check( dat, variable = "ID", pattern = "^A[0-9]{3}$" ) ## ----define-rules------------------------------------------------------------- rules <- audit_rules( range = list( Age = c(0, 30) ), category = list( Species = c( "Dog", "Cat" ) ), unique = "ID", required = "Species", pattern = list( ID = "^A[0-9]{3}$" ) ) rules ## ----apply-rules-------------------------------------------------------------- rule_results <- apply_audit_rules( dat, rules ) rule_results ## ----rule-summary------------------------------------------------------------- rule_results$summary rule_results$total_violations ## ----summarize-rules---------------------------------------------------------- summary(rule_results) ## ----integrated-audit--------------------------------------------------------- report <- audit_data( dat, include_nzv = FALSE, rules = rules ) report ## ----integrated-components---------------------------------------------------- report$summary report$rules ## ----report-summary----------------------------------------------------------- audit_summary <- summary(report) audit_summary ## ----summary-components------------------------------------------------------- audit_summary$dataset audit_summary$variables_with_issues audit_summary$duplicate_rows audit_summary$rules ## ----score-------------------------------------------------------------------- score <- audit_score(report) score ## ----score-components--------------------------------------------------------- score$score score$quality score$automatic_issues score$rule_violations score$overall_issues