In the equal_opportunity_score there are two warnings that can be thrown when either y_given_z1_y1 or y_given_z0_y1 is empty. The warning messages say that there are no predictions with the positive target for the positive or negative sensitive columns, this does not need to be the case though because there is an additional filter with only the true positive samples.
f"No samples with y_hat == {positive_target} for {sensitive_column} == 1, returning 0"
could become
f"No samples with y_hat == {positive_target} for {sensitive_column} == 1 and y_true == {positive_target}, returning 0"
Same for the negative case.
In the equal_opportunity_score there are two warnings that can be thrown when either
y_given_z1_y1ory_given_z0_y1is empty. The warning messages say that there are no predictions with the positive target for the positive or negative sensitive columns, this does not need to be the case though because there is an additional filter with only the true positive samples.could become
Same for the negative case.