{
  "_id": "6adac054dd3792e773238caa",
  "Package": "hvtiRutilities",
  "Type": "Package",
  "Title": "A Collection of Utilities for Use by HVTI CORR Group at the\nCleveland Clinic",
  "Version": "1.5.10",
  "Date": "2026-10-22",
  "Authors@R": "c(\nperson(\n\"John\", \"Ehrlinger\",\nemail = \"john.ehrlinger@gmail.com\",\nrole = c(\"aut\", \"cre\", \"cph\")\n)\n)",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "URL": "https://github.com/ehrlinger/hvtiRutilities,\nhttps://ehrlinger.github.io/hvtiRutilities/",
  "BugReports": "https://github.com/ehrlinger/hvtiRutilities/issues",
  "Description": "R utilities for the clinical investigations statistics\ngroup within The Heart & Vascular Institute at the Cleveland\nClinic.",
  "VignetteBuilder": "quarto",
  "SystemRequirements": "Quarto command line tool\n(<https://github.com/quarto-dev/quarto-cli>)",
  "Config/testthat/edition": "3",
  "Config/roxygen2/version": "8.1.0",
  "Config/pak/sysreqs": "make libicu-dev libx11-dev zlib1g-dev",
  "Repository": "https://ehrlinger.r-universe.dev",
  "Date/Publication": "2026-10-23 01:32:08 UTC",
  "RemoteUrl": "https://github.com/ehrlinger/hvtiRutilities",
  "RemoteRef": "HEAD",
  "RemoteSha": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-23 01:48:51 UTC",
    "User": "root"
  },
  "Author": "John Ehrlinger [aut, cre, cph]",
  "Maintainer": "John Ehrlinger <john.ehrlinger@gmail.com>",
  "_user": "ehrlinger",
  "_type": "src",
  "_file": "hvtiRutilities_1.5.10.tar.gz",
  "_fileid": "https://r2.ropensci.org/b1ddf7aabd5e50c99bea304b0472c1f9224e471347879cbb5290326ae35c6270",
  "_filesize": 1297534,
  "_sha256": "b1ddf7aabd5e50c99bea304b0472c1f9224e471347879cbb5290326ae35c6270",
  "_expires": "2027-01-31T02:02:57.000Z",
  "_created": "2026-10-23T01:48:51.000Z",
  "_published": "2026-10-23T02:02:59.663Z",
  "_upstream": "https://github.com/ehrlinger/hvtiRutilities",
  "_status": "success",
  "_maintainer": {
    "name": "John Ehrlinger",
    "email": "john.ehrlinger@gmail.com",
    "login": "ehrlinger",
    "bluesky": "@ehrlinger.bsky.social",
    "linkedin": "in/ehrlinger",
    "twitter": "@johnehrlinger",
    "description": "Working Data Scientist. Statistician applying statistical machine learning. Mechanical Engineer Fluid Mechanics and Dynamics. Physics nerd.\n\n",
    "uuid": 1110676
  },
  "_jobs": [
    {
      "job": 120194690858,
      "time": 320,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12473525093"
    },
    {
      "job": 120194690828,
      "time": 245,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12473380014"
    },
    {
      "job": 120194690875,
      "time": 370,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12473061479"
    },
    {
      "job": 120194690857,
      "time": 270,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12472557462"
    },
    {
      "job": 120192298163,
      "time": 484,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12473065498"
    },
    {
      "job": 120194690805,
      "time": 132,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "12473310241"
    },
    {
      "job": 120194690962,
      "time": 722,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "ERROR",
      "artifact": "12472872385"
    },
    {
      "job": 120194690921,
      "time": 782,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "ERROR",
      "artifact": "12473381176"
    },
    {
      "job": 120194690834,
      "time": 799,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "ERROR",
      "artifact": "12472777992"
    }
  ],
  "_buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523",
  "_commit": {
    "id": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
    "author": "John Ehrlinger <john.ehrlinger@gmail.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Merge pull request #240 from ehrlinger/feat/snapshot-guard",
    "time": 1792719128
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.4.0",
      "role": "Depends"
    },
    {
      "package": "digest",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "haven",
      "role": "Imports"
    },
    {
      "package": "jsonlite",
      "role": "Imports"
    },
    {
      "package": "labelled",
      "role": "Imports"
    },
    {
      "package": "readxl",
      "role": "Imports"
    },
    {
      "package": "tools",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "uuid",
      "role": "Imports"
    },
    {
      "package": "withr",
      "role": "Imports"
    },
    {
      "package": "yaml",
      "role": "Imports"
    },
    {
      "package": "arrow",
      "role": "Suggests"
    },
    {
      "package": "callr",
      "role": "Suggests"
    },
    {
      "package": "e1071",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "mice",
      "role": "Suggests"
    },
    {
      "package": "quarto",
      "role": "Suggests"
    },
    {
      "package": "randomForestSRC",
      "role": "Suggests"
    },
    {
      "package": "renv",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "tidyverse",
      "role": "Suggests"
    },
    {
      "package": "tibble",
      "role": "Suggests"
    },
    {
      "package": "pkgload",
      "role": "Suggests"
    },
    {
      "package": "varPro",
      "role": "Suggests"
    },
    {
      "package": "writexl",
      "role": "Suggests"
    }
  ],
  "_owner": "ehrlinger",
  "_selfowned": true,
  "_usedby": 2,
  "_updates": [
    {
      "week": "2025-50",
      "n": 1
    },
    {
      "week": "2026-07",
      "n": 1
    },
    {
      "week": "2026-10",
      "n": 4
    },
    {
      "week": "2026-12",
      "n": 3
    },
    {
      "week": "2026-13",
      "n": 1
    },
    {
      "week": "2026-14",
      "n": 2
    },
    {
      "week": "2026-29",
      "n": 1
    },
    {
      "week": "2026-32",
      "n": 7
    },
    {
      "week": "2026-33",
      "n": 7
    },
    {
      "week": "2026-34",
      "n": 17
    },
    {
      "week": "2026-35",
      "n": 11
    },
    {
      "week": "2026-36",
      "n": 21
    },
    {
      "week": "2026-37",
      "n": 10
    },
    {
      "week": "2026-38",
      "n": 24
    },
    {
      "week": "2026-39",
      "n": 18
    },
    {
      "week": "2026-40",
      "n": 13
    },
    {
      "week": "2026-41",
      "n": 21
    },
    {
      "week": "2026-42",
      "n": 21
    },
    {
      "week": "2026-43",
      "n": 11
    }
  ],
  "_tags": [
    {
      "name": "Prod_0.3.0",
      "date": "2026-03-02"
    },
    {
      "name": "v0.3.1",
      "date": "2026-03-17"
    },
    {
      "name": "v0.4.0",
      "date": "2026-03-17"
    },
    {
      "name": "v1.0.0.9000",
      "date": "2026-03-19"
    },
    {
      "name": "v1.0.0.9004",
      "date": "2026-04-01"
    },
    {
      "name": "v1.0.1",
      "date": "2026-08-04"
    },
    {
      "name": "v1.1.6",
      "date": "2026-08-31"
    },
    {
      "name": "v1.1.7",
      "date": "2026-08-31"
    },
    {
      "name": "v1.1.9",
      "date": "2026-09-03"
    },
    {
      "name": "v1.1.10",
      "date": "2026-09-04"
    },
    {
      "name": "v1.2.0",
      "date": "2026-09-17"
    },
    {
      "name": "v1.2.1",
      "date": "2026-09-18"
    },
    {
      "name": "v1.3.0",
      "date": "2026-09-19"
    },
    {
      "name": "v1.4.1",
      "date": "2026-09-25"
    },
    {
      "name": "v1.4.2",
      "date": "2026-09-28"
    },
    {
      "name": "v1.4.3",
      "date": "2026-09-29"
    },
    {
      "name": "v1.4.4",
      "date": "2026-10-02"
    },
    {
      "name": "v1.4.5",
      "date": "2026-10-06"
    },
    {
      "name": "v1.5.0",
      "date": "2026-10-08"
    },
    {
      "name": "v1.5.1",
      "date": "2026-10-08"
    },
    {
      "name": "v1.5.2",
      "date": "2026-10-12"
    },
    {
      "name": "v1.5.3",
      "date": "2026-10-13"
    },
    {
      "name": "v1.5.4",
      "date": "2026-10-14"
    },
    {
      "name": "v1.5.5",
      "date": "2026-10-15"
    },
    {
      "name": "v1.5.6",
      "date": "2026-10-20"
    },
    {
      "name": "v1.5.7",
      "date": "2026-10-20"
    },
    {
      "name": "v1.5.8",
      "date": "2026-10-20"
    },
    {
      "name": "v1.5.9",
      "date": "2026-10-21"
    },
    {
      "name": "v1.5.10",
      "date": "2026-10-22"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "ehrlinger",
      "count": 971,
      "uuid": 1110676
    },
    {
      "user": "claude",
      "count": 3,
      "uuid": 81847
    }
  ],
  "_userbio": {
    "uuid": 1110676,
    "type": "user",
    "name": "John Ehrlinger",
    "followers": 61,
    "description": "Working Data Scientist. Statistician applying statistical machine learning. Mechanical Engineer Fluid Mechanics and Dynamics. Physics nerd.\r\n\r\n"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/hvtiRutilities"
  },
  "_devurl": "https://github.com/ehrlinger/hvtirutilities",
  "_pkgdown": "https://ehrlinger.github.io/hvtiRutilities/",
  "_searchresults": 138,
  "_quarto": true,
  "_topics": [
    "quarto"
  ],
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/hvtiRutilities.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_cranurl": false,
  "_exports": [
    "add_abbreviation",
    "add_labels",
    "adopt_data_update",
    "apply_label_overrides",
    "apply_value_labels",
    "assert_cohort",
    "built_manifest",
    "built_path",
    "cache_fit",
    "capture_provenance",
    "check_data_updates",
    "clean_labels",
    "cohort_counts",
    "compare_datasets",
    "compare_parity",
    "concept_map",
    "concept_of",
    "covariate_audit",
    "covariates_to_numeric",
    "data_dictionary",
    "dataset_schema",
    "followup_check",
    "generate_survival_data",
    "get_label",
    "get_labels",
    "guard_snapshot",
    "hvti_non_prefixes",
    "hvti_prefix_folds",
    "hvti_taxonomy",
    "hvtiRutilities.news",
    "imputed_levels",
    "job_census",
    "job_files",
    "label_map",
    "level_map",
    "parity_headline",
    "parity_tolerance",
    "POOL_AFFIXES",
    "pool_collinear_pairs",
    "POOL_MIN_STEM",
    "POOL_PLAIN_SUFFIX",
    "preflight_report",
    "proc_contents",
    "proc_freq",
    "proc_means",
    "proc_univariate",
    "provenance_artifact",
    "provenance_data",
    "provenance_path",
    "prune_to_one_form",
    "publish_provenance",
    "r_data_types",
    "r_dir_impurities",
    "read_built",
    "read_clinical_data",
    "record_provenance",
    "register_data",
    "review_built",
    "review_data_update",
    "sample_data",
    "sas_macro_defs",
    "sas_macro_signature",
    "sas_path",
    "sas_triage",
    "sas_variable_block",
    "selection_crowding",
    "strip_level_prefix",
    "study_abbreviations",
    "study_checklist",
    "study_checkpoint",
    "study_checkpoint_push",
    "study_close",
    "study_config",
    "study_declare",
    "study_dir",
    "study_need",
    "study_reopen",
    "study_root",
    "study_setup",
    "study_status",
    "study_update_identity",
    "type_conversion_report",
    "update_manifest",
    "verify_manifest",
    "write_collision_report",
    "write_macro_manifest"
  ],
  "_help": [
    {
      "page": "hvtiRutilities-package",
      "title": "hvtiRutilities: Utilities to work with SAS data in R.",
      "topics": [
        "hvtiRutilities-package"
      ]
    },
    {
      "page": "add_abbreviation",
      "title": "Add a phrase to a study's abbreviation list",
      "topics": [
        "add_abbreviation"
      ]
    },
    {
      "page": "add_labels",
      "title": "Add or update labels in a label map",
      "topics": [
        "add_labels"
      ]
    },
    {
      "page": "adopt_data_update",
      "title": "Adopt one published dataset release",
      "topics": [
        "adopt_data_update"
      ]
    },
    {
      "page": "apply_label_overrides",
      "title": "Apply label overrides from a YAML file",
      "topics": [
        "apply_label_overrides"
      ]
    },
    {
      "page": "apply_value_labels",
      "title": "Declare value labels for coded variables from a YAML file",
      "topics": [
        "apply_value_labels"
      ]
    },
    {
      "page": "assert_cohort",
      "title": "Assert the cohort matches a job-level expectation",
      "topics": [
        "assert_cohort"
      ]
    },
    {
      "page": "built_manifest",
      "title": "Record the state of the built dataset",
      "topics": [
        "built_manifest"
      ]
    },
    {
      "page": "built_path",
      "title": "Path to the study's built dataset",
      "topics": [
        "built_path"
      ]
    },
    {
      "page": "cache_fit",
      "title": "Cache an expensive computation, strictly",
      "topics": [
        "cache_fit"
      ]
    },
    {
      "page": "capture_provenance",
      "title": "Capture an explicit job provenance payload",
      "topics": [
        "capture_provenance"
      ]
    },
    {
      "page": "check_data_updates",
      "title": "Check a study for published dataset updates",
      "topics": [
        "check_data_updates"
      ]
    },
    {
      "page": "clean_labels",
      "title": "Apply label overrides from a YAML file (deprecated)",
      "topics": [
        "clean_labels"
      ]
    },
    {
      "page": "cohort_counts",
      "title": "Count the analysable cohort",
      "topics": [
        "cohort_counts"
      ]
    },
    {
      "page": "compare_datasets",
      "title": "Compare two versions of a dataset",
      "topics": [
        "compare_datasets"
      ]
    },
    {
      "page": "compare_parity",
      "title": "Compare one R quantity against its SAS reference",
      "topics": [
        "compare_parity"
      ]
    },
    {
      "page": "concept_map",
      "title": "Map a candidate pool to concepts",
      "topics": [
        "concept_map"
      ]
    },
    {
      "page": "concept_of",
      "title": "The concept a candidate variable belongs to",
      "topics": [
        "concept_of"
      ]
    },
    {
      "page": "covariate_audit",
      "title": "Audit what would happen to each covariate in a model",
      "topics": [
        "covariate_audit"
      ]
    },
    {
      "page": "covariates_to_numeric",
      "title": "Apply what covariate_audit() reports",
      "topics": [
        "covariates_to_numeric"
      ]
    },
    {
      "page": "data_dictionary",
      "title": "Build a data dictionary from a labeled dataset",
      "topics": [
        "data_dictionary"
      ]
    },
    {
      "page": "dataset_schema",
      "title": "Column-level schema of a dataset",
      "topics": [
        "dataset_schema"
      ]
    },
    {
      "page": "followup_check",
      "title": "Check recorded follow-up before a time-related analysis",
      "topics": [
        "followup_check"
      ]
    },
    {
      "page": "generate_survival_data",
      "title": "Generate Synthetic Cardiac Surgery Survival Data",
      "topics": [
        "generate_survival_data"
      ]
    },
    {
      "page": "get_label",
      "title": "Look up the label for a single variable",
      "topics": [
        "get_label"
      ]
    },
    {
      "page": "get_labels",
      "title": "Look up labels for multiple variables at once",
      "topics": [
        "get_labels"
      ]
    },
    {
      "page": "guard_snapshot",
      "title": "Refuse a renv snapshot taken from the wrong R",
      "topics": [
        "guard_snapshot"
      ]
    },
    {
      "page": "hvti_non_prefixes",
      "title": "Second fields that are not analysis prefixes",
      "topics": [
        "hvti_non_prefixes"
      ]
    },
    {
      "page": "hvti_prefix_folds",
      "title": "Legacy prefixes folded into a taxonomy prefix",
      "topics": [
        "hvti_prefix_folds"
      ]
    },
    {
      "page": "hvti_taxonomy",
      "title": "Analysis prefix taxonomy",
      "topics": [
        "hvti_taxonomy"
      ]
    },
    {
      "page": "hvtiRutilities.news",
      "title": "Display the NEWS file",
      "topics": [
        "hvtiRutilities.news"
      ]
    },
    {
      "page": "imputed_levels",
      "title": "Levels of a column that are not clean integers",
      "topics": [
        "imputed_levels"
      ]
    },
    {
      "page": "job_census",
      "title": "Roll a job-file inventory up to studies and prefixes",
      "topics": [
        "job_census",
        "print.hvti_job_census"
      ]
    },
    {
      "page": "job_files",
      "title": "Inventory the job files under one or more corpus roots",
      "topics": [
        "job_files"
      ]
    },
    {
      "page": "label_map",
      "title": "Build a lookup map of data labels",
      "topics": [
        "label_map"
      ]
    },
    {
      "page": "level_map",
      "title": "Report what stripping a code prefix would do to a dataset's levels",
      "topics": [
        "level_map"
      ]
    },
    {
      "page": "parity_headline",
      "title": "Summarise a parity table as one reviewer-facing claim",
      "topics": [
        "parity_headline"
      ]
    },
    {
      "page": "parity_tolerance",
      "title": "Tolerance classes for SAS parity comparison",
      "topics": [
        "parity_tolerance"
      ]
    },
    {
      "page": "pool_conventions",
      "title": "Affix conventions for grouping a SAS candidate pool into concepts",
      "topics": [
        "POOL_AFFIXES",
        "POOL_MIN_STEM",
        "POOL_PLAIN_SUFFIX"
      ]
    },
    {
      "page": "pool_collinear_pairs",
      "title": "Candidate pairs carrying the same information under unrelated names",
      "topics": [
        "pool_collinear_pairs"
      ]
    },
    {
      "page": "preflight_report",
      "title": "Audit the analysis environment before running an analysis",
      "topics": [
        "preflight_report"
      ]
    },
    {
      "page": "proc_contents",
      "title": "Describe a dataset's variables, in the style of SAS PROC CONTENTS",
      "topics": [
        "proc_contents"
      ]
    },
    {
      "page": "proc_freq",
      "title": "Frequency tables, in the style of SAS PROC FREQ",
      "topics": [
        "proc_freq"
      ]
    },
    {
      "page": "proc_means",
      "title": "Summarise numeric variables, in the style of SAS PROC MEANS",
      "topics": [
        "proc_means"
      ]
    },
    {
      "page": "proc_univariate",
      "title": "Summarise and test numeric variables, in the style of SAS PROC UNIVARIATE",
      "topics": [
        "proc_univariate"
      ]
    },
    {
      "page": "provenance_artifact",
      "title": "Snapshot an input artifact for provenance",
      "topics": [
        "provenance_artifact"
      ]
    },
    {
      "page": "provenance_data",
      "title": "Snapshot a registered data file for provenance",
      "topics": [
        "provenance_data"
      ]
    },
    {
      "page": "provenance_path",
      "title": "Name the provenance sidecar for an output",
      "topics": [
        "provenance_path"
      ]
    },
    {
      "page": "prune_to_one_form",
      "title": "Prune a candidate pool to one form per concept",
      "topics": [
        "prune_to_one_form"
      ]
    },
    {
      "page": "publish_provenance",
      "title": "Publish captured provenance beside a completed output",
      "topics": [
        "publish_provenance"
      ]
    },
    {
      "page": "r_data_types",
      "title": "Automatically infer and convert data types",
      "topics": [
        "r_data_types"
      ]
    },
    {
      "page": "r_dir_impurities",
      "title": "Report top-level executable code in an R directory",
      "topics": [
        "r_dir_impurities"
      ]
    },
    {
      "page": "read_built",
      "title": "Read the study's built dataset",
      "topics": [
        "read_built"
      ]
    },
    {
      "page": "read_clinical_data",
      "title": "Read and prepare a clinical dataset in one step",
      "topics": [
        "read_clinical_data"
      ]
    },
    {
      "page": "record_provenance",
      "title": "Capture and publish provenance for an existing output",
      "topics": [
        "record_provenance"
      ]
    },
    {
      "page": "register_data",
      "title": "Register a study dataset",
      "topics": [
        "register_data"
      ]
    },
    {
      "page": "review_built",
      "title": "Review a rebuilt study dataset before registering it",
      "topics": [
        "review_built"
      ]
    },
    {
      "page": "review_data_update",
      "title": "Review one published dataset release",
      "topics": [
        "review_data_update"
      ]
    },
    {
      "page": "sample_data",
      "title": "Generate a sample dataset for testing",
      "topics": [
        "sample_data"
      ]
    },
    {
      "page": "sas_macro_defs",
      "title": "Extract every macro definition from a SAS file",
      "topics": [
        "sas_macro_defs"
      ]
    },
    {
      "page": "sas_macro_signature",
      "title": "Parse the documentation header of a legacy SAS macro file",
      "topics": [
        "sas_macro_signature"
      ]
    },
    {
      "page": "sas_path",
      "title": "Build a path under the study root",
      "topics": [
        "sas_path"
      ]
    },
    {
      "page": "sas_triage",
      "title": "Triage a directory of legacy SAS macro files",
      "topics": [
        "sas_triage"
      ]
    },
    {
      "page": "sas_variable_block",
      "title": "Read a variable list out of a SAS job",
      "topics": [
        "sas_variable_block"
      ]
    },
    {
      "page": "selection_crowding",
      "title": "Concepts represented more than once among selected covariates",
      "topics": [
        "selection_crowding"
      ]
    },
    {
      "page": "strip_level_prefix",
      "title": "Strip a leading code prefix from level text",
      "topics": [
        "strip_level_prefix"
      ]
    },
    {
      "page": "study_abbreviations",
      "title": "The abbreviation list a study's labels use",
      "topics": [
        "study_abbreviations"
      ]
    },
    {
      "page": "study_checklist",
      "title": "Render a study audit as a markdown checklist",
      "topics": [
        "study_checklist"
      ]
    },
    {
      "page": "study_checkpoint",
      "title": "Record a study checkpoint",
      "topics": [
        "study_checkpoint"
      ]
    },
    {
      "page": "study_checkpoint_push",
      "title": "Push pending study checkpoints",
      "topics": [
        "study_checkpoint_push"
      ]
    },
    {
      "page": "study_close",
      "title": "Close or reopen a study",
      "topics": [
        "study_close",
        "study_reopen"
      ]
    },
    {
      "page": "study_config",
      "title": "Read the study manifest",
      "topics": [
        "study_config"
      ]
    },
    {
      "page": "study_declare",
      "title": "Declare the packages a study needs",
      "topics": [
        "study_declare"
      ]
    },
    {
      "page": "study_dir",
      "title": "Resolve a directory in the study layout",
      "topics": [
        "study_dir"
      ]
    },
    {
      "page": "study_need",
      "title": "Install a package a study needs, or say how",
      "topics": [
        "study_need"
      ]
    },
    {
      "page": "study_root",
      "title": "Locate the study root",
      "topics": [
        "study_root"
      ]
    },
    {
      "page": "study_setup",
      "title": "Set up study identity and directories",
      "topics": [
        "study_setup"
      ]
    },
    {
      "page": "study_status",
      "title": "Audit a study's reproducibility readiness",
      "topics": [
        "study_status"
      ]
    },
    {
      "page": "study_update_identity",
      "title": "Record a verified study identity",
      "topics": [
        "study_update_identity"
      ]
    },
    {
      "page": "type_conversion_report",
      "title": "Read the per-column type-conversion report",
      "topics": [
        "type_conversion_report"
      ]
    },
    {
      "page": "update_manifest",
      "title": "Create or update a dataset manifest file",
      "topics": [
        "update_manifest"
      ]
    },
    {
      "page": "verify_manifest",
      "title": "Verify all datasets listed in a manifest",
      "topics": [
        "verify_manifest"
      ]
    },
    {
      "page": "write_collision_report",
      "title": "Write the macro name-collision report",
      "topics": [
        "write_collision_report"
      ]
    },
    {
      "page": "write_macro_manifest",
      "title": "Write the canonical macro manifest",
      "topics": [
        "write_macro_manifest"
      ]
    }
  ],
  "_readme": "https://github.com/ehrlinger/hvtiRutilities/raw/HEAD/README.md",
  "_rundeps": [
    "bit",
    "bit64",
    "cellranger",
    "cli",
    "clipr",
    "cpp11",
    "crayon",
    "digest",
    "dplyr",
    "forcats",
    "generics",
    "glue",
    "haven",
    "hms",
    "jsonlite",
    "labelled",
    "lifecycle",
    "magrittr",
    "pillar",
    "pkgconfig",
    "prettyunits",
    "progress",
    "purrr",
    "R6",
    "readr",
    "readxl",
    "rematch",
    "rlang",
    "stringi",
    "stringr",
    "tibble",
    "tidyr",
    "tidyselect",
    "tzdb",
    "utf8",
    "uuid",
    "vctrs",
    "vroom",
    "withr",
    "yaml"
  ],
  "_vignettes": [
    {
      "source": "data-labels.qmd",
      "filename": "data-labels.html",
      "title": "Data Label Handling Best Practices",
      "engine": "quarto::html",
      "headings": [
        "Why Labels Matter",
        "The Label Lifecycle",
        "Phase 1: Extracting Labels at Ingestion",
        "Detecting Missing Labels",
        "Phase 2: Labeling Derived Variables",
        "Method A: Label the data directly (preferred)",
        "Method B: Update the label map (for reporting)",
        "Which method should I use?",
        "Phase 3: Study-Specific Overrides",
        "Example labels_overrides.yml",
        "Phase 4: Using Labels in Output",
        "Safe single-variable lookup with get_label()",
        "Building a data dictionary",
        "Labels in summary tables",
        "Labels in plots",
        "Complete Workflow",
        "Labels and r_data_types()",
        "Anti-Patterns to Avoid",
        "1. Hard-coded label replacements in shared code",
        "2. Creating derived variables without labels",
        "3. Using match() without error checking",
        "4. Labeling the map instead of the data",
        "Function Reference",
        "Session Information"
      ],
      "created": "2026-04-01 17:59:07",
      "modified": "2026-04-01 17:59:07",
      "commits": 1
    },
    {
      "source": "dataset-versioning.qmd",
      "filename": "dataset-versioning.html",
      "title": "Dataset Version Tracking with manifest.yaml",
      "engine": "quarto::html",
      "headings": [
        "The Problem: Datasets Drift",
        "In a Study: Rebuild, Then Update",
        "Setup",
        "Registering Datasets",
        "CSV — automatic row count",
        "Inspecting the manifest",
        "SAS datasets — automatic row count",
        "Excel workbooks — automatic row count",
        "Other formats — supply n_rows explicitly",
        "Verifying Before Every Analysis",
        "Typical script header",
        "What Happens When Data Changes",
        "Collecting all failures at once",
        "Correcting a file",
        "Looking at a Rebuild Before Registering It",
        "Running a Job on the Working File",
        "How a Version Was Produced",
        "A New Pull for a Different Project",
        "What Changed Inside the File?",
        "Policy Recommendations",
        "Session Information"
      ],
      "created": "2026-04-01 17:59:07",
      "modified": "2026-10-13 19:58:44",
      "commits": 7
    },
    {
      "source": "hvtiRutilities.qmd",
      "filename": "hvtiRutilities.html",
      "title": "Getting Started with hvtiRutilities",
      "engine": "quarto::html",
      "headings": [
        "Introduction",
        "Main Functions",
        "Installation",
        "Basic Usage",
        "Automatic Type Conversion with r_data_types()",
        "Transformation Rules",
        "Working with Real Data",
        "Example: mtcars Dataset",
        "Controlling Factor Conversion",
        "Skipping Specific Variables",
        "Binary Variables as Factors",
        "Working with Variable Labels",
        "Extracting and Looking Up Labels",
        "Labeling Derived Variables",
        "Labels Persist Through Transformations",
        "Complete Workflow Example",
        "Handling Missing Data",
        "Advanced Usage",
        "Custom Workflows for Specific Data Types",
        "Integration with Data Import",
        "Best Practices",
        "When to Use r_data_types()",
        "Recommended Settings by Use Case",
        "Checking Results",
        "Summary",
        "Session Information"
      ],
      "created": "2026-04-01 17:59:07",
      "modified": "2026-08-26 09:12:09",
      "commits": 3
    },
    {
      "source": "sas-procedures.qmd",
      "filename": "sas-procedures.html",
      "title": "PROC CONTENTS, MEANS, FREQ and UNIVARIATE in R",
      "engine": "quarto::html",
      "headings": [
        "Four Procedures You Already Run",
        "What Arrived? proc_contents()",
        "Reading the Extra Columns",
        "Where the SAS Original Has More",
        "Type Is Two-Valued, and That Hides Things",
        "Do the Numbers Look Right? proc_means()",
        "Stratifying with class",
        "The Quartile Trap",
        "Logical Columns",
        "Do the Categories Look Right? proc_freq()",
        "Missing Values",
        "The Denominator Trap",
        "Weighted Percentiles and Tests: proc_univariate()",
        "Weighted Quantiles Follow a Different Rule",
        "VARDEF Changes More Than the Variance",
        "Tests for Location and Normality",
        "Did the Extract Change? compare_datasets()",
        "Where the R Version Differs",
        "Checklist",
        "See Also"
      ],
      "created": "2026-08-14 13:25:38",
      "modified": "2026-10-06 15:49:59",
      "commits": 4
    },
    {
      "source": "reproducible-seeds.qmd",
      "filename": "reproducible-seeds.html",
      "title": "Reproducible Seeds in R and SAS",
      "engine": "quarto::html",
      "headings": [
        "The Problem: Scattered Seeds",
        "The Fix: One Seed, One Place",
        "Create a config.yml",
        "Read it in R",
        "Using the Seed with randomForestSRC",
        "Using the Seed with varPro",
        "Read it in SAS",
        "Keeping R and SAS in Sync",
        "How Seeds Work",
        "R",
        "SAS",
        "randomForestSRC / varPro",
        "Implications for Multi-Script Projects",
        "Checklist"
      ],
      "created": "2026-04-01 17:59:07",
      "modified": "2026-04-01 17:59:07",
      "commits": 1
    },
    {
      "source": "survival-data.qmd",
      "filename": "survival-data.html",
      "title": "Simulating Cardiac Surgery Survival Data",
      "engine": "quarto::html",
      "headings": [
        "Overview",
        "Generating the Dataset",
        "Data Structure",
        "Outcome Summary",
        "Integration with r_data_types() and label_map()",
        "Extracting Variable Labels",
        "Preparing Data for Survival Analysis",
        "Reproducibility",
        "Session Information"
      ],
      "created": "2026-04-01 17:59:07",
      "modified": "2026-09-17 23:36:29",
      "commits": 2
    }
  ],
  "_score": 6.673905192457371,
  "_indexed": true,
  "_nocasepkg": "hvtirutilities",
  "_universes": [
    "ehrlinger"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.5.10",
      "date": "2026-10-23T01:52:38.000Z",
      "distro": "resolute",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/20a0c35d3da154607cb57b0997f500f7dc94540516839f390754dd5210d076bc",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.5.10",
      "date": "2026-10-23T01:51:36.000Z",
      "distro": "resolute",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/1083efe41e60f3d840248b93861b883f2c16232d344bb05adae18dafa7be3af8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.5.10",
      "date": "2026-10-23T01:51:54.000Z",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/9b2841d5308c91ccd6cd00e687e0f82d790b421cbad55eaa863cc46dd6b3f2d2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.5.10",
      "date": "2026-10-23T01:51:20.000Z",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/6afac0b98cbcb9b2ecaae832a60f2806f8144ce0ff6927c1bd7a9fc2c1dc5eb9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.5.10",
      "date": "2026-10-23T01:51:29.000Z",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/1cc840c4743e56948ecf74c4f65b713445caa69b247de384731e0c75a4c6300b",
      "status": "success",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.5.10",
      "date": "2026-10-23T01:50:49.000Z",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/e9e0d6f414d3c1a3aaf42769646c59b9cd56657190f6b261210eeccf4b1c652c",
      "status": "failure",
      "check": "ERROR",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.5.10",
      "date": "2026-10-23T01:50:58.000Z",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/f53a4a7388f1c37725e4f8afc18e47295712672089071dc0296bde5f03ad549a",
      "status": "failure",
      "check": "ERROR",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.5.10",
      "date": "2026-10-23T01:51:21.000Z",
      "commit": "550c42b2760c876ba5b3ac0fdb26c867b9130b4a",
      "fileid": "https://r2.ropensci.org/67e01b874f938514357af1dd72c30cdb61fc29b11181de7891be314ef4a11c31",
      "status": "failure",
      "check": "ERROR",
      "buildurl": "https://github.com/r-universe/ehrlinger/actions/runs/39885376523"
    }
  ]
}