Calculate Discipline Rates by Subgroup
Source:R/fetch_discipline.R
calc_discipline_rates_by_subgroup.RdCalculates discipline rates by subgroup for disproportionality analysis. Computes rates per specified base (default 1000 students) and calculates risk ratios compared to total population.
Arguments
- df
A data frame from
fetch_disciplinary_removals,fetch_violence_vandalism_hib, or similar discipline data. Must contain subgroup column and a count/number column.- rate_per
Base for rate calculation (default: 1000). For example, rate_per = 1000 calculates incidents per 1000 students.
Value
Data frame with discipline rates including:
All original columns from input data
discipline_rate - Incidents per rate_per students
percent_by_subgroup - Percentage of total incidents by subgroup
risk_ratio - Ratio of subgroup rate to total population rate (values > 1 indicate higher risk than total population)
Examples
if (FALSE) { # \dontrun{
# Get disciplinary removals data
discipline <- fetch_disciplinary_removals(2024)
# Calculate rates per 1000 students
rates <- calc_discipline_rates_by_subgroup(discipline, rate_per = 1000)
# View disproportionality for racial subgroups
rates %>%
dplyr::filter(subgroup %in% c("black", "hispanic", "white")) %>%
dplyr::select(school_name, subgroup, discipline_rate, risk_ratio)
} # }