aif360.sklearn.utils
.check_groups¶
-
aif360.sklearn.utils.
check_groups
(arr, prot_attr, ensure_binary=False)[source]¶ Get groups from the index of arr.
If there are multiple protected attributes provided, the index is flattened to be a 1-D Index of tuples. If ensure_binary is
True
, raises a ValueError if there are not exactly two unique groups. Also checks that all provided protected attributes are in the index.Parameters: - arr (array-like) – Either a Pandas object containing protected attribute
information in the index or array-like with explicit protected
attribute array(s) for
prot_attr
. - prot_attr (label or array-like or list of labels/arrays) – Protected
attribute(s). If contains labels, arr must include these in its
index. If
None
, all protected attributes inarr.index
are used. Can also be 1D array-like of the same length as arr or a list of a combination of such arrays and labels in which case, arr may not necessarily be a Pandas type. - ensure_binary (bool) – Raise an error if the resultant groups are not binary.
Returns: tuple –
- groups (
pandas.Index
) – Label (or tuple of labels) of protected attribute for each sample in arr. - prot_attr (
FrozenList
) – Modified input. If input is a single label, returns single-item list. If input isNone
returns list of all protected attributes.
- arr (array-like) – Either a Pandas object containing protected attribute
information in the index or array-like with explicit protected
attribute array(s) for