custom_disparity_metric#

solas_disparity.custom_disparity_metric(...)#

Provide a modular format that to create a custom disparity metric.

Parameters
  • group_data (DataFrame) – Dataframe containing columns for group data.

  • protected_groups (List[str]) – List of protected groups.

  • reference_groups (List[str]) – List of reference groups with the same length as protected_groups.

  • group_categories (List[str]) – List of group categories to which each protected and reference group pair belongs to (e.g. race, gender, age, etc.). Has the same length as protected_groups.

  • outcome (Series) – Outcome series.

  • metric (Callable[..., Union[int, float]]) – A function of an outcome, label, and/or sample weight that returns a scalar. Typical argument names such as those used by sklearn.metrics or SolasAI disparity testing functions.

  • label (Optional[Series], optional) – Label, true outcome, and/or target series evaluated alongside outcome. Defaults to None.

  • sample_weight (Optional[Series], optional) – Sample weight series. Has the same length as group_data. Defaults to None.

  • difference_calculation (Optional[ DifferenceCalculation ], optional) – Method for calculating the difference between group metrics. Defaults to DifferenceCalculation.REFERENCE_MINUS_PROTECTED.

  • difference_threshold (Optional[Callable[[Union[int, float]], bool]], optional) – A function of the difference between protected and reference group metrics that returns whether the difference is significant. This will be factored into practical significance if not None. Defaults to lambda difference:(difference < 0.0).

  • ratio_calculation (Optional[ RatioCalculation ], optional) – Method for calculating the ratio between group metrics. Defaults to RatioCalculation.PROTECTED_OVER_REFERENCE.

  • ratio_threshold (Optional[Callable[[Union[int, float]], bool]], optional) – A function of the ratio between protected and reference group metrics that returns whether the difference is significant. This will be factored into practical significance if not None. Defaults to None.

  • statistical_significance_test (Optional[StatSigTest], optional) – Statistical significance test that will be factored into practical significance if not None. Defaults to None.

  • p_value_threshold (float, optional) – P-value threshold for statistical significance. Defaults to 0.05.

  • statistical_significance_arguments (Dict[str, Any], optional) – A dictionary of arbitrary arguments to the statistical significance test function. Every function corresponds to a member of StatSigTest. Defaults to dict().

Returns

Object containing results of the disparity calculation.

Return type

Disparity