Introduction

This project is an overview of methodological considerations for measuring and investigating neural oscillations.

In practice, this project is a review of methodological topics, with a focus on evaluating relationships between data properties and methods assumptions.

The project is organized into seven key topics. Each topic includes a description of the issue, example demonstrations, and notes on how to avoid the issue. Each topic was chosen to reflect a general consideration that is broadly relevant investigating neural oscillations.

Overvall, this project aims to give an overview of and collect together discussion of these considerations. Many of these topics have been been discussed in the literature before, and links to other work that has highlighted, demonstrated, and discussed the topic at hand is also included.

Organization of the Project

Each topic is covered in a dedicated notebook, that introduces the problem and demonstrates some examples.

The methodological considerations covered in this project are:

  • #1) detecting oscillations

  • #2) band definitions

  • #3) aperiodic activity

  • #4) temporal variability

  • #5) waveform shape

  • #6) overlapping sources

  • #7) signal-to-noise ratio

To investiate each of topics, we use simulated data and common analysis tools to explore and demonstrate potential methodological limitations.

Simulations

Each topic is demonstrated using simulated data. Simulated data allows for precise control over properties of the data, and the capacity to isolate and demonstrate individual features of the data, and topics of interest.

The simulations are created with the neurodsp toolbox, which simulates neural time series as combinations of periodic and aperiodic activity.

Analysis Tools

Throughout this project, we use open-source Python toolboxes. This includes common modules from the scientific Python ecosystem, including numpy, scipy, matplotlib, seaborn, etc.

Simulations & analyses are done with NeuroDSP, a Python tool for digital signal processing of neural time series:

Some analyses also use specialized tools for particular analyses, including:

All of the code for this project is openly available in this repository, and the aforementioned tools are all open-source and readily available.

Conclusion

This project covers methodological considerations for studying neural oscillations.

To continue through this project, check through the subsequent notebooks that describe each of the topics.