Nature NeuroscienceNeurosciencePeer-reviewed journal article
Parameterizing neural power spectra
Thomas DonoghueiD, Matar HalleriD, Erik J PetersoniD, Paroma VarmaiD, Priyadarshini Sebastian, Richard GaoiD, Torben NotoiD, Antonio H. Lara, Joni D. WallisiD, Robert Thomas KnightiD, Avgusta Y. ShestyukiD, Bradley VoytekiD
Abstract
Electrophysiological signals across species and recording scales exhibit both periodic and aperiodic features. Periodic oscillations have been widely studied and linked to numerous physiological, cognitive, behavioral, and disease states, while the aperiodic \"background\" 1/f component of neural power spectra has received far less attention. Most analyses of oscillations are conducted on a priori, canonically-defined frequency bands without consideration of the underlying aperiodic structure, or verification that a periodic signal even exists in addition to the aperiodic signal. This is problematic, as recent evidence shows that the aperiodic signal is dynamic, changing with age, task demands, and cognitive state. It has also been linked to the relative excitation/inhibition of the underlying neuronal population. This means that standard analytic approaches easily conflate changes in the periodic and aperiodic signals with one another because the aperiodic parameters--along with oscillation center frequency, power, and bandwidth--are all dynamic in physiologically meaningful, but likely different, ways. In order to overcome the limitations of traditional narrowband analyses and to reduce the potentially deleterious effects of conflating these features, we introduce a novel algorithm for automatic parameterization of neural power spectral densities (PSDs) as a combination of the aperiodic signal and putative periodic oscillations. Notably, this algorithm requires no a priori specification of band limits and accounts for potentially-overlapping oscillations while minimizing the degree to which they are confounded with one another. This algorithm is amenable to large-scale data exploration and analysis, providing researchers with a tool to quickly and accurately parameterize neural power spectra.
In-depth summary
Claude Opus 5.5 · xhigh effort · 5 Nov 2026 · from the full text of version 1 (11 Apr 2018)
An open-source Python algorithm decomposes neural power spectra into a dynamic aperiodic 1/f background and Gaussian oscillatory peaks without requiring predefined canonical frequency bands.
Traditional electrophysiological analyses measure power inside fixed canonical frequency bands without verifying that a periodic oscillation exists or accounting for shifts in the aperiodic 1/f background. This algorithm jointly models the aperiodic background and overlapping periodic peaks to prevent conflating broadband offset, slope, or frequency shifts with true oscillatory power.
Key results
ShownJoint iterative fitting of an exponential aperiodic component and multiple Gaussian peaks accurately reconstructs neural power spectral densities with few parameters.
On an illustrative neural power spectrum, a combined model with broadband offset -21.4 au, slope -1.12 au/Hz, and two Gaussians (10.0 Hz, amplitude 0.69 au, bandwidth 3.18 Hz; 16.3 Hz, amplitude 0.14 au, bandwidth 7.03 Hz) accounted for >99% of variance. · METHODS; Figure legends
ShownThreshold-based residual selection isolates the aperiodic background without bias from large oscillatory peaks or predefined exclusion zones.
Using seed values of the first-frequency amplitude for offset and -2.0 au/Hz for slope, the algorithm selects residuals below the 2.5 percentile threshold for a second aperiodic fit before iteratively fitting peaks above a 2 std noise floor. · METHODS; Figure legends
ShownNarrowband power measurements conflate four distinct physiological processes and generate illusory oscillations from purely aperiodic noise.
True 8-12 Hz oscillatory power reduction, center frequency slowing (e.g., 10 Hz to 8 Hz), broadband offset shifts, and aperiodic slope rotations around 20-30 Hz yield identical total narrowband power changes, while filtering white or pink (1/f) noise produces false oscillatory peaks. · Introduction; DISCUSSION; Figure legends
ShownThe Python implementation supports rapid single-spectrum fitting and parallel high-throughput processing across electrophysiological datasets.
On a 3.5 GHz Intel i7 MacBook Pro, a single power spectral density is parameterized in approximately 10-20 msec using numpy and scipy (>= version 0.19). · METHODS; Footnotes
Methods, data and reproducibility
Models a power spectral density (Welch's method) in semilog-power space as the linear sum of an aperiodic exponential signal (offset, slope, and optional knee k) and N Gaussian peaks. Fits the aperiodic background on lowest-amplitude residuals (2.5 percentile), iteratively fits Gaussians from FWHM estimates above a 2 SD threshold, refines all peaks jointly with scipy.optimize.curve_fit, and re-fits the background.
- Illustrative electrophysiological neural power spectral density recordings and simulated white and pink (1/f) noise spectra
- Methods & tools
- FOOOF, Python, NumPy, SciPy, scipy.optimize.curve_fit, Welch's method
- Software & environment
- Python >= 3.5 under the Apache-2.0 license; package dependencies are limited to numpy and scipy (>= version 0.19).
- Experimental conditions
- 10-20 msec per power spectrum on a 3.5 GHz Intel i7 MacBook Pro, with built-in multiprocessing support across spectra.
- Reproducibility gaps
- No public repository link or accession is provided for the illustrative electrophysiological data shown in Figures 1-3.
Limitations (2)
- Candidate Gaussian peaks that heavily overlap (within 1.5 std) or lie too close to the edges of the frequency spectrum (<= 1.0 std) are automatically dropped to handle edge cases. · stated by the authors
- Applying the model across diverse recording scales such as invasive local field potentials versus M/EEG over broad frequency ranges requires tuning optional parameters including the knee parameter k, bandwidth limits, maximum peak counts, and amplitude thresholds. · stated by the authors
Read this if you analyze EEG, MEG, ECoG, or local field potential spectra and want to separate periodic oscillations from dynamic 1/f background activity.
- Citations
- 2,286
- FWCI
- 100.28
- Field percentile
- top 1%
Reproducibility ledger
Nobody has reported trying to reproduce this paper yet. Did you replicate an experiment or run the code? Your report saves the next lab a week.
Sign in to file a reproducibility report.
Related papers
- From periodic/aperiodic to static/dynamic: rethinking the decomposition of neural power spectra
Daniele Marinazzo·bioRxiv·Jul 29, 2026
- Separating neural oscillations from aperiodic 1/f activity: challenges and recommendations
Moritz Gerster, Gunnar Waterstraat, … Vadim V. Nikulin·NeuroinformaticsPeer-reviewed·Apr 7, 2022
- An iterative search algorithm to identify oscillatory dynamics in neurophysiological time series
Amanda M. Beck, Mingjian He, … Patrick L. Purdon·bioRxiv·Oct 30, 2022
- Beyond rhythm - A framework for understanding the frequency spectrum of neural activity
Quentin Perrenoud, Jessica A. Cardin·Frontiers in Systems NeurosciencePeer-reviewed·Aug 31, 2023
- Time-resolved parameterization of aperiodic and periodic brain activity
Luc Edward Wilson, Jason da Silva Castanheira, Sylvain Baillet·eLifePeer-reviewed·Aug 17, 2022
- Filtered Point Processes Tractably Capture Rhythmic And Broadband Power Spectral Structure in Neural Electrophysiological Recordings
Patrick Francis Bloniasz, Shohei Oyama, Emily P. Stephen·Journal of Neural EngineeringPeer-reviewed·Jun 1, 2025