Skip to main content

Estimation of phase-amplitude coupling (PAC) in neural time series, including with driven auto-regressive (DAR) models.

Project description

Build Status Test coverage Python27 Python36

This package provides tools to estimate phase-amplitude coupling (PAC) in neural time series.

In particular, it implements the driven auto-regressive (DAR) models presented in the reference below [Dupre la Tour et al. 2017].

Read more in the documentation.


To install pactools, use one of the following two commands:

  • Latest stable version:

    pip install pactools
  • Development version:

    pip install git+

To upgrade, use the --upgrade flag provided by pip.

To check if everything worked fine, you can do:

python -c 'import pactools'

and it should not give any error messages.

Phase-amplitude coupling (PAC)

Among the different classes of cross-frequency couplings, phase-amplitude coupling (PAC) - i.e. high frequency activity time-locked to a specific phase of slow frequency oscillations - is by far the most acknowledged. PAC is typically represented with a comodulogram, which shows the strenght of the coupling over a grid of frequencies. Comodulograms can be computed in pactools with more than 10 different methods.

Driven auto-regressive (DAR) models

One of the method is based on driven auto-regressive (DAR) models. As this method models the entire spectrum simultaneously, it avoids the pitfalls related to incorrect filtering or the use of the Hilbert transform on wide-band signals. As the model is probabilistic, it also provides a score of the model goodness of fit via the likelihood, enabling easy and legitimate model selection and parameter comparison; this data-driven feature is unique to such model-based approach.

We recommend using DAR models to estimate PAC in neural time-series. More detail in [Dupre la Tour et al. 2017].


This work was supported by the ERC Starting Grant SLAB ERC-YStG-676943 to Alexandre Gramfort, the ERC Starting Grant MindTime ERC-YStG-263584 to Virginie van Wassenhove, the ANR-16-CE37-0004-04 AutoTime to Valerie Doyere and Virginie van Wassenhove, and the Paris-Saclay IDEX NoTime to Valerie Doyere, Alexandre Gramfort and Virginie van Wassenhove,

Cite this work

If you use this code in your project, please cite [Dupre la Tour et al. 2017]:

    author = {Dupr{\'e} la Tour, Tom and Tallot, Lucille and Grabot, Laetitia and Doy{\`e}re, Val{\'e}rie and van Wassenhove, Virginie and Grenier, Yves and Gramfort, Alexandre},
    journal = {PLOS Computational Biology},
    publisher = {Public Library of Science},
    title = {Non-linear auto-regressive models for cross-frequency coupling in neural time series},
    year = {2017},
    month = {12},
    volume = {13},
    url = {},
    pages = {1-32},
    number = {12},
    doi = {10.1371/journal.pcbi.1005893}

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pactools-0.3.1.tar.gz (95.1 kB view hashes)

Uploaded source

Built Distribution

pactools-0.3.1-py3-none-any.whl (82.7 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page