fnr_parity: False Negative Rate parity

View source: R/fnr_parity.R

fnr_parityR Documentation

False Negative Rate parity

Description

This function computes the False Negative Rate (FNR) parity metric

Formula: FN / (TP + FN)

Usage

fnr_parity(
  data,
  outcome,
  group,
  probs = NULL,
  preds = NULL,
  outcome_base = NULL,
  cutoff = 0.5,
  base = NULL,
  group_breaks = NULL
)

Arguments

data

Data.frame that contains the necessary columns.

outcome

Column name indicating the binary outcome variable (character).

group

Column name indicating the sensitive group (character).

probs

Column name or vector with the predicted probabilities (numeric between 0 - 1). Either probs or preds need to be supplied.

preds

Column name or vector with the predicted binary outcome (0 or 1). Either probs or preds need to be supplied.

outcome_base

Base level of the outcome variable (i.e., negative class). Default is the first level of the outcome variable.

cutoff

Cutoff to generate predicted outcomes from predicted probabilities. Default set to 0.5.

base

Base level of the sensitive group (character).

group_breaks

If group is continuous (e.g., age): either a numeric vector of two or more unique cut points or a single number >= 2 giving the number of intervals into which group feature is to be cut.

Details

This function computes the False Negative Rate (FNR) parity metric as described by Chouldechova 2017. False negative rates are calculated by the division of false negatives with all positives (irrespective of predicted values). In the returned named vector, the reference group will be assigned 1, while all other groups will be assigned values according to whether their false negative rates are lower or higher compared to the reference group. Lower false negative error rates will be reflected in numbers lower than 1 in the returned named vector, thus numbers lower than 1 mean BETTER prediction for the subgroup.

Value

Metric

Raw false negative rates for all groups and metrics standardized for the base group (false negative rate parity metric). Lower values compared to the reference group mean lower false negative error rates in the selected subgroups

Metric_plot

Bar plot of False Negative Rate parity metric

Probability_plot

Density plot of predicted probabilities per subgroup. Only plotted if probabilities are defined

Examples

data(compas)
compas$Two_yr_Recidivism_01 <- ifelse(compas$Two_yr_Recidivism == 'yes', 1, 0) 
fnr_parity(data = compas, outcome = 'Two_yr_Recidivism_01', group = 'ethnicity',
probs = 'probability', cutoff = 0.4, base = 'Caucasian')
fnr_parity(data = compas, outcome = 'Two_yr_Recidivism_01', group = 'ethnicity',
preds = 'predicted', cutoff = 0.5, base = 'Hispanic')


kozodoi/Fairness documentation built on March 22, 2023, 12:29 p.m.