Chapter 0: What is EEGLAB & ERPLAB?¶
This is the start of a third, independent tutorial track in this repository: EEGLAB, a MATLAB-based toolbox for EEG/MEG analysis, and its ERP-focused plugin ERPLAB. It sits alongside the MNE-Python track and the Brainstorm track covered elsewhere in this repo, but it is a different kind of tool again, and this track can be read on its own — no Python, MATLAB, or prior EEGLAB/ERPLAB experience required.
EEGLAB in one paragraph¶
EEGLAB is a free, open-source MATLAB toolbox for processing electrophysiological signals — EEG, MEG, and related data — built at the Swartz Center for Computational Neuroscience (SCCN), UC San Diego. Like Brainstorm, it's driven through a graphical interface: you load a recording, and a menu bar walks you through filtering, re-referencing, running ICA, and epoching, with every step logged so it can be replayed as a MATLAB script later. Unlike Brainstorm, EEGLAB does not require any specific vendor format or 3D head model to get started — its strength is a huge, community-contributed plugin ecosystem (over 200 plugins at last count) that covers everything from automated channel rejection to source localization to, most relevantly for this track, event-related potential analysis.
ERPLAB: the ERP-focused plugin¶
ERPLAB is not a separate application — it's a plugin that installs into EEGLAB and adds a new menu specifically for event-related potential (ERP) work: computing condition-averaged waveforms, filtering them with ERP-appropriate settings, and — its signature feature — measuring amplitude and latency values from those waveforms automatically across many subjects and conditions at once. If your study lives or dies on a P300, N400, or MMN component, ERPLAB's Measurement Tool is usually the fastest way to get from cleaned epochs to a results spreadsheet. You cannot run ERPLAB without EEGLAB open behind it, which is why this repository treats them as one combined track rather than two.
Where this fits next to MNE-Python and Brainstorm¶
All three tracks in this repository solve the same underlying problem — turn a raw EEG/MEG recording into a scientific result — with different trade-offs:
| MNE-Python | Brainstorm | EEGLAB + ERPLAB | |
|---|---|---|---|
| Interface | Python code | GUI | GUI |
| Requires | Python | Nothing (standalone) or MATLAB | MATLAB, or EEGLAB's standalone runtime |
| Signature strength | Reproducible scripts, huge ecosystem | 3D source localization | ERP measurement at scale, plugin ecosystem |
| Best for | Pipelines run across many subjects, code review, custom analysis | Fast exploratory work + source imaging | Classic ERP paradigms (P300, N400, MMN, ...) |
None of the three is strictly "better" — many labs use two or even all three, choosing per task rather than per project.
What this track covers¶
Eight chapters, the same zero-prior-knowledge style as the other two tracks, but walking through EEGLAB's and ERPLAB's menus instead of Python code or Brainstorm's interface:
| # | Chapter |
|---|---|
| 0 | What is EEGLAB & ERPLAB? |
| 1 | Installation and First Launch |
| 2 | Importing and Inspecting Data |
| 3 | Preprocessing |
| 4 | Artifact Removal with ICA |
| 5 | Events and Epoching |
| 6 | ERP Analysis with ERPLAB |
| 7 | Bridging Back to MNE-Python |
If you're brand new to EEG/MEG concepts (what a channel is, what an event marker is, what "referencing" means), the EEG Fundamentals chapter of the MNE-Python track covers that background — it's tool-agnostic and applies just as much here.