Skip to main content

This package provides the functionality for an interactive Streamlit dashboard designed to support stakeholders in exploring individual fairness notions within algorithmic decision-making systems.

Project description

Individual Consistency eXplorer (icx) Python Package

This package provides the functionality for an interactive Streamlit dashboard designed to support stakeholders in exploring individual fairness notions within algorithmic decision-making systems.

The dashboard allows users to:

  • Explore and operate on a tabular dataset of individuals provided with their corresponding binary classifications;
  • Define how similarity between individuals is measured, by configuring categorisation of attributes and how distances between attribute values are computed;
  • Compute and visualise five individual fairness metrics that summarise the consistency of classifications across the dataset; and
  • Inspect attributes of specific individuals and of those individuals most similar to them, to explore variations in attribute values and allow like-for-like comparisons of classifications.

This package implements the functionality described in a submission to ECAI Demo Track 2025, and further details and documentation will be provided upon publication.

📦 Installation

It is recommended to install icx in a virtual environment (e.g., conda).

pip install icx

Basic Usage

from icx import dashboard

Run with default settings

Uses first 1000 individuals from pre-loaded 'adult.csv' dataset from UCI Machine Learning repository.

dashboard.run()

🗂️ Use Your Own Dataset

You can provide your own dataset, as long as it meets the following requirements:

  • The first row contains column headers (attribute names).
  • Each attribute is either numeric (int, float) or categorical (string).
  • Each instance must be assigned a binary class: either positive or negative. You can specify the value representing the positive class — all other values will be treated as negative.
  • The class column must be named "y" or explicitly defined in the parameters.

Example

dashboard.run(
    filepath="path/to/your/data.csv",   # Path to your CSV file
    y="class_column_name",             # Name of the class column (default: "y")
    positive="positive_label"           # Label for the positive class (default: 1)
)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

icx-0.0.3.tar.gz (428.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

icx-0.0.3-py3-none-any.whl (452.9 kB view details)

Uploaded Python 3

File details

Details for the file icx-0.0.3.tar.gz.

File metadata

  • Download URL: icx-0.0.3.tar.gz
  • Upload date:
  • Size: 428.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for icx-0.0.3.tar.gz
Algorithm Hash digest
SHA256 52da411011bf85ed5f0bb14ff2ce2a6faa678e160a150a52f14ae83b1b75a3ec
MD5 e988497a460576cd29688d4b2f358908
BLAKE2b-256 9dd34dc8ddbd5990bd9a39784b0e03aa4d76255f34f50cd3d8b1ac085c38d9b6

See more details on using hashes here.

File details

Details for the file icx-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: icx-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 452.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for icx-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 18c5a3289493402177de565fd40294168a9dcb34829bed50d439cbd9ee1c783d
MD5 fc7d7c035417991f84d00525b7ead766
BLAKE2b-256 f6582b802ea38bfbeb373404c7f6800c5c788d7f39bc36e41ff83d8a59f863a8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page