Skip to content
EvalSuite
Documentation menu

Getting started

Current version: v0.4.0

Installation

Shellv0.1.0
pip install evalsuite-python
pip install "evalsuite-python[plot]"     # Matplotlib figures
pip install "evalsuite-python[all]"      # every optional extra

The package is published on PyPI as evalsuite-python and imported as evalsuite (the shorter name was too similar to an existing project). As with pip install scikit-learn and import sklearn, only the install name differs.

The base package depends only on NumPy, SciPy and pandas. Matplotlib is an optional extra and is not imported by import evalsuite. Python 3.9 to 3.14 are supported on Linux, Windows and macOS.

Two API levels

Every metric is available as a plain function. Nothing forces you to use the high-level evaluator.

Pythonlow_level.pyv0.1.0
import evalsuite as es

es.f1(y_true, y_pred, average="macro")
es.specificity(y_true, y_pred)
es.rmse(y_true, y_pred)

es.evaluate validates the inputs once, builds the confusion matrix once, and runs every metric that applies to the task.

Pythonhigh_level.pyv0.1.0
result = es.evaluate(
  y_true=[0, 1, 1, 0, 1, 0, 1, 1],
  y_pred=[0, 1, 0, 0, 1, 1, 1, 1],
  y_prob=[0.1, 0.9, 0.4, 0.2, 0.8, 0.6, 0.7, 0.95],
)

print(result)            # readable summary
result["mcc"]            # one metric, behaves like a number
result.to_dataframe()
result.save("results.html")   # or .csv, .json, .md, .tex

From the command line

Shellv0.1.0
evalsuite evaluate predictions.csv --y-true label --y-pred pred --y-prob prob

Next steps

Read Core concepts for the validation and result model, then the guide for your task. To try the workflow in the browser, use the playground.