CLiREN-LMS
Data Cleaning and Preparation in R

The Purpose of Data Cleaning and Preparation

Example R Pattern: Preserve Inputs and Write Outputs Separately

30-45 minutes Applied Step 16 of 23
Code

Example R Pattern: Preserve Inputs and Write Outputs Separately

16 / 23
Code

Example R Pattern: Preserve Inputs and Write Outputs Separately

r

library(tidyverse)
library(janitor)

raw_enrollment <- read_csv("data_raw/redcap_export_2026-06-01.csv") |>
  clean_names()

quality_summary <- raw_enrollment |>
  summarise(
    n_records = n(),
    n_sites = n_distinct(site),
    missing_consent_dates = sum(is.na(consent_date)),
    duplicate_ids = n() - n_distinct(participant_id)
  )

write_csv(quality_summary, "outputs/quality_summary_2026-06-01.csv")