Skip to main content

Entity prioritization and escalation detection using GLMM statistical models

Project description

Priorityx: Entity prioritization and escalation detection using GLMM statistical models

PyPI version Downloads Tests Python License

Entity prioritization and escalation detection using GLMM statistical models

Installation

pip install priorityx

Quick Start

import pandas as pd
import priorityx as px

df = pd.read_csv("data.csv")

# Default: volume x growth (single GLMM)
results = px.fit_priority_matrix(
    df,
    entity_col="service",
    timestamp_col="date",
    temporal_granularity="quarterly",
)
# Returns: entity, x_score, y_score, count, quadrant

px.plot_priority_matrix(results, entity_name="Service", save_plot=True)

Custom Axes

# Custom Y axis: volume × resolution_days (two GLMMs)
results = px.fit_priority_matrix(
    df,
    entity_col="service",
    timestamp_col="date",
    y_metric="resolution_days",
)

# Custom both axes: disputed_amount × paid_amount
results = px.fit_priority_matrix(
    df,
    entity_col="service",
    timestamp_col="date",
    x_metric="disputed_amount",
    y_metric="paid_amount",
)

Composite Indices

# Add entity metrics
metrics = px.aggregate_entity_metrics(
    df,
    entity_col="service",
    duration_start_col="opened_at",
    duration_end_col="closed_at",
    primary_col="exposure",
    secondary_col="recovery",
)
results = results.merge(metrics, left_on="entity", right_on="service", how="left")

# Add weighted indices: RI (Risk), SQI (Service Quality), EWI (Early Warning)
results = px.add_priority_indices(
    results,
    volume_col="count",
    growth_col="y_score",
    severity_col="total_primary",
    resolution_col="mean_duration",
    recovery_col="secondary_to_primary_ratio",
    # customize weights (default shown)
    w_volume=0.4, w_growth=0.4, w_severity=0.2,
    w_resolution=0.5, w_recovery=0.5,
    w_risk=0.7, w_quality=0.3,
)

# Top priority entities
top_risks = results.nlargest(10, "EWI")

Features

  • GLMM-based priority matrix (Q1–Q4) with entity-level intercept/slope insights
  • Priority-based transition timeline (Crisis / Investigate / Monitor / Low) with spike markers (*X, *Y, *XY)
  • Cumulative movement tracking and trajectory visualizations
  • Transition driver analysis that surfaces top subcategories causing quadrant shifts with spike summaries
  • Deterministic seeding option for reproducible GLMM runs (set PRIORITYX_GLMM_SEED)

Use Cases

IT incidents, software bugs, compliance violations, performance monitoring.

Documentation

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

priorityx-0.6.1.tar.gz (270.1 kB view details)

Uploaded Source

Built Distribution

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

priorityx-0.6.1-py3-none-any.whl (56.8 kB view details)

Uploaded Python 3

File details

Details for the file priorityx-0.6.1.tar.gz.

File metadata

  • Download URL: priorityx-0.6.1.tar.gz
  • Upload date:
  • Size: 270.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for priorityx-0.6.1.tar.gz
Algorithm Hash digest
SHA256 ad5fdec547de91ef34314d32ed2c05e61ae8e37a26b086f204afe786d129c99f
MD5 94f49d1e716e1f1314095c77b7747060
BLAKE2b-256 0606c8cf5a892fede62f8d2f0943a68624b3a707b729aca82bdf105f786972ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for priorityx-0.6.1.tar.gz:

Publisher: release.yml on okkymabruri/priorityx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file priorityx-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: priorityx-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 56.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for priorityx-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a4036a59175916c1cbe6275067c6893dcdc7b513cbb17d25ab7a80c2a9782d3b
MD5 e8843f80d623df350d590867cd874d34
BLAKE2b-256 35ce755c640f0f1c8dcf143e785949c60810b4c020020b8fba0f63ce47b649e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for priorityx-0.6.1-py3-none-any.whl:

Publisher: release.yml on okkymabruri/priorityx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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