
Aggregate per-record predictive-policing data to per-area
Source:R/fairness_predpol.R
morie_fairness_predpol_aggregate_areas.RdAggregate per-record predictive-policing data to per-area
Usage
morie_fairness_predpol_aggregate_areas(
area,
risk,
outcome,
group = NULL,
population = NULL
)Arguments
- area
Area identifier per record.
- risk
Predicted-risk score per record.
- outcome
Realised-outcome indicator/count per record.
- group
Optional protected attribute per record; the per-area majority becomes the area's label.
- population
Optional named numeric vector mapping area to population, or a per-record vector (taken as constant within an area). When supplied, outcome rate is per 10,000 inhabitants.
Examples
set.seed(1)
area <- sample(sprintf("a%02d", 1:5), 200, replace = TRUE)
risk <- runif(200)
outcome <- rbinom(200, 1, plogis(risk - 0.5))
group <- sample(c("X", "Y"), 200, replace = TRUE)
morie_fairness_predpol_aggregate_areas(area, risk, outcome, group = group)
#> $areas
#> [1] "a01" "a02" "a03" "a04" "a05"
#>
#> $mean_risk
#> a01 a02 a03 a04 a05
#> 0.5544834 0.4895392 0.5475517 0.4777008 0.5056700
#>
#> $outcome_rate
#> a01 a02 a03 a04 a05
#> 0.4468085 0.4250000 0.5882353 0.5128205 0.3000000
#>
#> $group
#> a01 a02 a03 a04 a05
#> "Y" "X" "Y" "X" "X"
#>
#> $n_records
#> a01 a02 a03 a04 a05
#> 47 40 34 39 40
#>