BI-Vital Python Library

bivital is the official tool-chain for working with BI-Vital data in Python.
It stream-lines everything from project setup to labelling and makes your workflows reproducible – whether you prefer a quick CLI call or an interactive Jupyter notebook.


✨ Main capabilities

Area What you can do
Project management Create a clean on-disk project folder tree for multi-series studies (bvtool project)
Data import Import raw CSV records from the hard drive or directly from the BI-Vital hardware and sort them automatically by device ID. (bvtool data)
Series handling Group measurements into logical blocks – perfect for cross-day sessions (bvtool series)
Label workflow Attach time-stamped labels (activities, events, anomalies) via CLI or notebook helpers (bvtool label)
CLI everywhere One Swiss-army-knife command: bvtool – ideal for scripts & head-less servers
Notebook ready Native pandas/numpy objects make it easy to pass data to your own ML pipeline or use other libraries such as Neurokit2

🐍 Installation

The package is published on PyPI: PyPI - bivital.
Please refer to the README in the repository for detailed installation notes.


▶️ Usage

The full user manual can be found in the official Python library repository.


💡 Examples

Hands-on notebooks live in the src/bivital/example/ folder of the
official repository — perfect to copy-paste and adapt to your own project:

Example What it shows
basic_example.ipynb Create a project, import BI-Vital CSV data, and plot ECG + heart rate.
data_and_label_interpolate_example.ipynb Demonstrates attaching labels and performing time-aligned interpolation of signals + labels.
time_index_handling_example.ipynb Shows advanced handling of time indices when working with multi-series data.

→ Browse them at py_bivital/examples