vax_air: Synthetic Australian Immunisation Register Extract

vax_airR Documentation

Synthetic Australian Immunisation Register Extract

Description

**Bird note**: This is the second flock — the AIR records whose individual birds must be matched to their counterparts in the case linelist. Some will pair cleanly; others will remain unpaired because the case was not vaccinated or vaccination was administered elsewhere.

A synthetic extract from the Australian Immunisation Register (AIR) for use in starling vignettes, documentation examples, and tests. No real person data. 400 records; approximately 200 are true matches to records in cases_notifiable. All Medicare numbers have valid checksums. Each person may have 1–4 vaccination doses stored in wide format (vax_date_1vax_date_4, vax_type_1vax_type_4).

Usage

data(vax_air)

Format

A data frame with 400 rows and 15 columns:

id_var

character. Unique AIR identifier ("AIR_00001", etc.).

lettername1

character. First name.

lettername2

character. Surname.

dob

Date. Date of birth.

gender

character. "Male" or "Female".

postcode

character. Sunshine Coast postcode (4550–4562).

medicare10

character. 10-digit Medicare number. All records have valid Modulus 10 checksums (check_medicare returns 1L for every row).

vax_date_1

Date. Date of first vaccination dose. Never NA.

vax_type_1

character. Vaccine type for dose 1.

vax_date_2

Date. Date of second dose; NA if person received only one dose.

vax_type_2

character. Vaccine type for dose 2; NA if absent.

vax_date_3

Date. Date of third dose; NA if fewer than three doses.

vax_type_3

character. Vaccine type for dose 3; NA if absent.

vax_date_4

Date. Date of fourth dose; NA if fewer than four doses.

vax_type_4

character. Vaccine type for dose 4; NA if absent.

Source

Generated by data-raw/starling_synthetic_data.R. Run source("data-raw/starling_synthetic_data.R") from the package root to rebuild.

See Also

cases_notifiable for the paired case linelist. vignette("linked-cohort", package = "starling") for a worked end-to-end linkage example using both datasets.

Examples

## Not run: 
data(vax_air)
head(vax_air)

# Confirm all Medicare numbers pass checksum
vax_checked <- check_medicare(vax_air)
mean(vax_checked$medicare_valid == 1L, na.rm = TRUE)  # should be ~1.0

# Distribution of dose counts
n_doses <- rowSums(!is.na(vax_air[, paste0("vax_date_", 1:4)]))
table(n_doses)

## End(Not run)

starling documentation built on July 10, 2026, 9:07 a.m.