Team Ai
Apppublic

PriyaPbs/ModelOptix

sourceHugging Faceupdated 6mo agoView on Hugging Face
0likes
bias_detector.cpython-310.pyc23 linesDownload Raw Back to __pycache__
1o

2���iC3�@s.ddlZddlZddejdedefdd�ZdS)�N�df�
target_column�sensitive_colscs�|sgd���fdd�|jD�}i}d}d}|D]�}||jvr q||����}t|�dkr/qi}tjj�||�}	|	sD||��d}4|D]/}||||k}t|�dkrWqF|	r`||�	�}
n|||5k�	�}
t6�|
�sut|
�|t
|�<qFt|�dkr}qt|���}t|�}t|�}||}|dkr�||d}nd}tt|d�d�}|dk}t|d�|d	d7�|��D�t|d�d�||<||7}|d
7}q|dkr�||nd}|t|d�t|���d�S)zV8    Detects bias in the dataset by calculating outcome disparity between groups.9    )ZgenderZsexZraceZ	ethnicityZagecsg|]10}|���vr|�qS�)�lower)�.0�c�Z
possible_colsr�2C:\Users\priya\Desktop\ModelOptix\bias_detector.py�11<listcomp>�zdetect_bias.<locals>.<listcomp>r��dgY@�PcSsi|]12\}}|t|d��qS)�)�round)r�k�vrrr13�14<dictcomp>Erzdetect_bias.<locals>.<dictcomp>r)�fairness_score�
bias_detectedZ
group_outcomeZoutcome_gap�)�bias_reportr�sensitive_columns_detectedN)�columns�dropna�unique�len�pd�api�types�is_numeric_dtype�mode�mean�np�isnan�float�str�list�values�max�minr�items�keys)rrrZreportZtotal_fairnessZ15valid_cols�col�groupsZoutcomes�16is_numericZ	top_class�gZgroup_dfZmean_outcome�vals�max_val�min_val�gaprrZ
overall_scorerr	r17�detect_biassb1819�20�2122�r6)N)�pandasr�numpyr$�	DataFramer'r(r6rrrr23�<module>s