LFP Analysis
This four-week online course covers the analysis and interpretation of local field potentials with Python, including current source density, filtering, spectral decomposition, time-frequency analysis, phase-locking measures, and coherence.
What is the local field potential (LFP)? What kind of neural activity does it reflect, and how can we analyze it? This course addresses these questions using signal-processing techniques, current source density analysis, simulated data, and real Neuropixels recordings.
Participants will use Python’s scientific stack, including NumPy, Matplotlib, Xarray, SciPy-Signal, and PyWavelets, together with neuroscience-specific software such as Neo and Elephant. The course develops methods for interpreting LFPs and relating them to spiking activity, behavior, and activity recorded across neural populations.
Course Outline
The course meets weekly, with each 3.5-hour live online session followed by a homework assignment and additional post-session exercises, for a total workload of 20 hours.
Session 1: Current Source Density Analysis
Visualize LFPs alongside spiking and behavioral data, simulate LFPs using LFPy, compute current source density estimates with different CSD methods and relate estimated current sources and sinks to population firing rates.
Session 2: Filtering and Power Spectra
Develop an intuition for signals in the time and frequency domains, apply IIR filters, and characterize LFP spectra using the Fourier transform, Welch’s method, and multitaper spectral estimation.
Session 3: Time-Varying Frequency Analysis
Apply Morlet wavelets to simulated and real Neuropixels recordings, construct time-frequency representations, align spectral changes to experimental events, and statistically compare spectra across conditions.
Session 4: Measures of Coherence
Extract instantaneous phase using the Hilbert transform and quantify relationships among LFPs and between LFPs and spikes using spectral coherence, phase-locking value, and spike-field coherence.
Learning and participation
Topics
- Visualizing and Analyzing LFPs: Relating LFPs to spikes and behavior, simulating LFPs, and computing CSD estimates using NumPy, SciPy-Signal, Xarray, Matplotlib, and LFPy.
- Spectral Analysis: IIR filters, the Fourier transform, Welch's method, and multitapering with Xarray, SciPy-Signal, NumPy, and Matplotlib.
- Time-Frequency Analysis: Morlet wavelets, time-frequency representations, and null-hypothesis testing with PyWavelets and MNE.
- Coherence and Phase-Locking: spectral coherence, PLV, and spike-field coherence with SciPy-Signal and Elephant.
Intended participants
- Researchers and students from all universities are welcome.
- Participants of all educational backgrounds are welcome.
- Comfort with Python data analysis and basic familiarity with electrophysiology or signal-processing concepts are helpful.
Useful resources for preparation
Certification
Participants who attend at least 75% of the course and complete the assignments will receive a certificate by email at the end of the course.