Metadata-Version: 2.4
Name: acti-data-analyzer
Version: 1.0.0
Summary: A library for processing and analyzing actigraphic data.
Author-email: Piotr Biegański <pbieganski@fuw.edu.pl>
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://gitlab.com/fuw_software/aktygrafy
Keywords: actigraphy,sleep,circadian rhythms
Classifier: Natural Language :: English
Classifier: Topic :: Scientific/Engineering
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Requires-Python: ~=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy~=2.3.0
Requires-Dist: tqdm~=4.67.1
Requires-Dist: ciso8601~=2.3.1
Requires-Dist: multiprocess~=0.70.16
Requires-Dist: scipy~=1.16.0
Requires-Dist: piecewise-regression~=1.5.0
Requires-Dist: matplotlib~=3.10.7
Requires-Dist: pandas~=2.3.3
Requires-Dist: pygt3x~=0.7.1
Provides-Extra: obci
Requires-Dist: readmanager>=1.1.3; extra == "obci"
Provides-Extra: gui
Requires-Dist: dearpygui~=2.1.1; extra == "gui"
Provides-Extra: test
Requires-Dist: pytest~=9.0.0; extra == "test"
Requires-Dist: pytest-order; extra == "test"
Requires-Dist: pytest-randomly; extra == "test"
Requires-Dist: flake8~=7.0.0; extra == "test"
Requires-Dist: flake8-pyproject; extra == "test"
Requires-Dist: mypy~=1.18.2; extra == "test"
Requires-Dist: mypy_extensions; extra == "test"
Provides-Extra: docs
Requires-Dist: sphinx~=8.2; extra == "docs"
Requires-Dist: sphinx-autoapi~=3.6; extra == "docs"
Requires-Dist: sphinx-book-theme~=1.1; extra == "docs"
Requires-Dist: commonmark~=0.9.1; extra == "docs"
Dynamic: license-file

# ADA – Actigraphic Data Analyzer
ADA stands for Actigraphic Data Analyzer, coincidentally being also the name of the first programmer in the world.
It is an open source Python module for processing, analyzing and visualizing actigraphic data, with the main focus on bedtime sleep/wake classification and circadian rhythms analysis.
ADA is usable in form of a python package, and in form of standalone application with graphical interface (GUI).

## Installation
To install the module use pip:

```shell
pip install acti-data-analyzer
```

The GUI for Windows 10 and Windows 11 is availabe as a standalone executable from TODO WHERRE IT WILL BE??. Alternatively, GUI can be run on any system as a Python script, best within a venv. To do so, one may:

* Clone this repository (or download as a .zip and extract).
* Install the package and dependencies using `pip install acti-data-analyzer[gui]`.
* Run the gui by running `run_gui.py` script.

## Main features

* Reading and writing data from:
  * GENEActiv .bin and .csv files
  * Actigraph Corp .gt3x and .csv files
  * The MESA dataset.
* Converting data to native .ada format (much more efficient in terms of disk space and reading speed).
* Multiple algorithms allowing collapsing into epochs:
  * MIMS
  * ActivityIndex
  * ENMO
  * Resampling
  * Cole-Kripke
* Sleep/wake scoring using multiple algorithms:
  * Cole-Kripke
  * Webster
  * Scripps Clinic
  * UCSD
  * Sazonov
  * Unified Filter, with possibility of custom filter construction.
* Estimating multiple sleep metrics:
  * Sleep efficiency
  * Sleep fragmentation index
  * Sleep onset latency
  * Wake after sleep onset
  * And more.
* Assessing circadian rhythms:
  * Single and multi-component cosinor in linear and nonlinear variants
  * Sigmoidally-transformed cosinor
  * Spectrum estimator using autoregressive model
  * Detrended Fluctuation Analysis
  * Nonparametric measures: Interdaily Stability, Intradaily Variability, M10, L5.
* Easy to read and analyze summaries of sleep/wake and circadian assessments for multiple subjects.
* Automatic and customizable synchronization of actigraphic data with PSG staging.
* Plotting of all analysis steps.

Full documentation together with usage tutorial can be found under the [link](https://fuw_software.gitlab.io/aktygrafy/).
