Skip to content

About

Synthetic wearable-data pipeline: validation, deduplication, time-series aggregation, interpretable anomaly detection, and prioritized alerts. Python · pandas · SQLite.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Health Pipeline Prototype

A synthetic-data monitoring exercise demonstrating validation, time-series processing, interpretable detection, and prioritized alerts. This public prototype is separate from the later deployed xHealth internship systems described on my profile. It is not a clinically validated decision-support system.

This is an End-to-end monitoring pipeline for consumer health device data. Ingests time-series readings from blood pressure monitors, pulse oximeters, smart scales, and heart rate trackers, detects clinical concerns, and generates alerts for clinician review. Designed for adults 65+.

Quick Start

pip install -r requirements.txt
python main.py

The command generates its outputs in output/. Sample output files are not committed in this repository.

Functions

Generates synthetic patient data (20 patients × 4 devices × 30 days, ~100K readings) with realistic edge cases — sensor faults, Bluetooth duplicates, time gaps, calibration drift — and runs it through a 5-stage pipeline:

  1. Data generation — synthetic patients with different clinical profiles
  2. Ingestion — validate, tag faults, deduplicate, store to SQLite
  3. Processing — daily aggregation, gap detection, rolling statistics
  4. Analysis — three detection layers: threshold checks → trend detection → cross-device correlation
  5. Alerts — prioritize, deduplicate, output JSON + clinician summary

Design rationale, assumptions, and tradeoffs are in DESIGN.md.

Output

Generated file Contents
output/health_monitoring.db SQLite monitoring database
output/alerts.json Structured alerts
output/alert_summary.txt Human-readable alert summary

Structure

├── main.py              # Entry point
├── config.py            # Thresholds and parameters
├── models.py            # Patient, Device, Reading and DB operations
├── data_generator.py    # Synthetic data with edge cases
├── ingestion.py         # Validation, deduplication and storage
├── processing.py        # Aggregation and rolling statistics
├── analyzer.py          # Three-layer analysis
├── alert_engine.py      # Prioritization and output
├── DESIGN.md            # Assumptions, tradeoffs and decisions
└── requirements.txt

Requirements

Python 3.9+, numpy, pandas.

About

Synthetic wearable-data pipeline: validation, deduplication, time-series aggregation, interpretable anomaly detection, and prioritized alerts. Python · pandas · SQLite.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages