Calculate disproportionate impact via the percentage point gap (PPG), proportionality index, and 80% index methods for data stored in a data.table object. This is the workhorse function leveraged by the di_iterate_dt function.
di_calc_dt(
dt,
success_var,
group_var,
cohort_var = "",
weight_var = NULL,
ppg_reference_group = "overall",
min_moe = 0.03,
use_prop_in_moe = FALSE,
prop_sub_0 = 0.5,
prop_sub_1 = 0.5,
di_prop_index_cutoff = 0.8,
di_80_index_cutoff = 0.8,
di_80_index_reference_group = "hpg",
filter_subset = ""
)
A data.table object with summarized results.
A data frame of class data.table. If the object is not a data table, one could surround the object with as.data.table.
A character value specifying the success variable name.
A character value specifying the group (disaggregation) variable name.
(Optional) A character value specifying the cohort variable. If not specified, then a single cohort is assumed (defaults to an empty string, ''
).
(Optional) A character variable specifying the weight variable if the input data set is summarized (i.e., the the success variables specified in success_vars
contain count of successes). Weight here corresponds to the denominator when calculating the success rate. Defaults to NULL
for an input data set where each row describes an individual.
Either 'overall'
, 'hpg'
, 'all but current'
, or a character value specifying a group from group_var
to be used as the reference group for comparison using percentage point gap method.
The minimum margin of error to be used in the PPG calculation; see di_ppg.
(TRUE
or FALSE
) Whether the estimated proportions should be used in the margin of error calculation by the PPG; see di_ppg.
Default is 0.50; see di_ppg.
Default is 0.50; see di_ppg.
Threshold used for determining disproportionate impact using the proportionality index; see di_prop_index; defaults to 0.80.
Threshold used for determining disproportionate impact using the 80% index; see di_80_index; defaults to 0.80.
Either 'overall'
, 'hpg'
, 'all but current'
, or a character value specifying a group from group_var
to be used as the reference group for comparison using 80% index.
A character value such as "Ethnicity == 'White' & Gender == 'M'"
used in the i
argument (filtering rows via dt[i, j, by]
) to filter data in dt
. The character value is parsed using eval(parse(text=filter_subset))
. Defaults to ''
for no filtering.