Skip to main content

cardtale

PyPi Version GitHub Downloads

cardtale is a Python package for generating automated model and data cards for time series, streamlining the documentation process for machine learning models and datasets.

Key Features

  • Automated generation of PDF reports with comprehensive time series analysis
  • Built-in statistical analysis and visualization of temporal patterns
  • Support for univariate time series data

Each time series is studied from multiple dimensions, including:

  • Data Overview: Fundamental characteristics and statistical properties analysis
  • Trend Analysis: Long-term growth patterns and level stabilization assessment
  • Seasonality Detection: Analysis of multiple seasonality levels with strength metrics
  • Variance Analysis: Heteroskedasticity testing and variance stabilization methods
  • Change Point Detection: Identification of structural changes and their impact

Basic Example

Here's a basic example of cardtale.

from datasetsforecast.m3 import M3
from cardtale.cards.builder import CardsBuilder

df, *_ = M3.load('./assets', group='Monthly')

freq = 'ME'
uid = 'M1080'

series_df = df.query(f'unique_id=="{uid}"').reset_index(drop=True)

tcard = CardsBuilder(series_df, freq)
tcard.build_cards()
tcard.get_pdf(path='example.pdf')

Screenshots

trend

trend2

seas

seas2

var

change

⚠️ WARNING

cardtale is in the early stages of development. It is designed to cover datasets containing single univariate time series, focusing on forecasting tasks.

cardtale has been developed for monthly time series. So, the output for other frequencies may not be as reliable. Especially time series with complex seasonality.

If you encounter any issues, please report them in GitHub Issues

Installation

Prerequisites

Required dependencies:

arch==7.1.0
pandas==2.2.3
lightgbm==4.5.0
neuralforecast==1.7.5
mlforecast==0.13.4
statsforecast==1.7.8
datasetsforecast==0.0.8
numerize==0.12
plotnine==0.13.6
statsmodels==0.14.4
jinja2==3.1.4
ruptures==1.1.9
weasyprint==62.3

You can install cardtale using pip:

pip install cardtale -U

[Optional] Installation from source

To install cardtale from source, clone the repository and run the following command:

git clone https://github.com/vcerqueira/cardtale
pip install -e cardtale

License

Cardtale is released under the MIT License. See the LICENSE file for more details.

Mission

In the machine learning lifecycle, proper documentation of models and datasets is crucial for transparency, reproducibility, and responsible AI practices. However, creating comprehensive model and data cards can be time-consuming. The Python package cardtale aims to partially automate this process, making it more efficient and consistent.

The goal of cardtale is to generate a set of analyses, visualizations, and interpretations based on input model metrics and dataset characteristics. While it doesn't replace the expertise of data scientists or domain experts, Cardtale speeds up the creation of model and data cards, guiding analysts towards key insights and areas that may require further exploration.

Project Funded by

Agenda “Center for Responsible AI”, nr. C645008882-00000055, investment project nr. 62, financed by the Recovery and Resilience Plan (PRR) and by European Union - NextGeneration EU.

Metadata

Release files for cardtale 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cardtale 0.1.4
File Size Uploaded Provenance Actions
cardtale-0.1.4.tar.gz 28.9 MB Without provenance Details for cardtale-0.1.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for cardtale 0.1.4
File Interpreter ABI Platform Actions
cardtale-0.1.4-py3-none-any.whl Python 3 none any Details for cardtale-0.1.4-py3-none-any.whl

Total release size: 29.0 MB

Release files / cardtale-0.1.4.tar.gz

Download URL cardtale-0.1.4.tar.gz
Size 28.9 MB
Tags Source
SHA-256 checksum
How to use checksums
5cb266dcc36c52d1fda9c18696baf427ffb54726380190b80a01efcec1abe6eb
BLAKE2b-256 checksum
How to use checksums
16aa2a4de768e171e8687419fd579b765e66f4fcd1fa7852297ab5ae712d001d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.15

Release files / cardtale-0.1.4-py3-none-any.whl

Download URL cardtale-0.1.4-py3-none-any.whl
Size 89.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cf4fbb1a1f7368c45c827b71aab1f3ac539cc045888234ba5508f9704912f483
BLAKE2b-256 checksum
How to use checksums
211fb995931c3d450204835819d24eeed28cd4dac6ed04e65574b108058dda28
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.15

Security for cardtale 0.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page