Before you install

Overview of the MNE tools suite

  • MNE-C was the initial stage of this project, providing a set of interrelated command-line and GUI programs focused on computing cortically constrained Minimum Norm Estimates from MEG and EEG data. These tools were written in C by Matti Hämäläinen, and are documented here.

  • MNE-Python reimplements the functionality of MNE-C, and extends considerably the analysis and visualization capabilities. MNE-Python is collaboratively developed and has more than 200 contributors.

  • The MNE-MATLAB documentation provides a MATLAB interface to the .fif file format and other MNE data structures, and provides example MATLAB implementations of some of the core analysis functionality of MNE-C. It is distributed alongside MNE-C, and can also be downloaded from the MNE-MATLAB git repository.

  • MNE-CPP provides core MNE functionality implemented in C++ and is primarily intended for embedded and real-time applications.

There is also a growing ecosystem of other Python packages that work alongside MNE-Python, including packages for:

  • a graphical user interface for MNE-Python (MNELAB)

  • easily importing MEG data from the Human Connectome Project for use with MNE-Python (MNE-HCP)

  • managing MNE projects so that they comply with the Brain Imaging Data Structure specification (MNE-BIDS)

  • automatic bad channel detection and interpolation (autoreject)

  • convolutional sparse dictionary learning and waveform shape estimation (alphaCSC)

  • independent component analysis (ICA) with good performance on real data (PICARD)

  • phase-amplitude coupling (pactools)

  • representational similarity analysis (rsa)

  • microstate analysis (microstate)

  • connectivity analysis using dynamic imaging of coherent sources (DICS) (conpy)

  • general-purpose statistical analysis of M/EEG data (eelbrain)

  • post-hoc modification of linear models (posthoc)

  • a python implementation of the Preprocessing Pipeline (PREP) for EEG data (pyprep)

  • automatic multi-dipole localization and uncertainty quantification with the Bayesian algorithm SESAME (sesameeg)

  • GLM and group level analysis of near-infrared spectroscopy data (mne-nirs)

What should I install?

If you intend only to perform ERP, ERF, or other sensor-level analyses, MNE-Python is all you need. If you prefer to work with shell scripts and the Unix command line, or prefer MATLAB over Python, probably all you need is MNE-C — the MNE MATLAB toolbox is distributed with it — although note that the C tools and the MATLAB toolbox are less actively developed than the MNE-Python module, and hence are considerably less feature-complete.

If you want to transform sensor recordings into estimates of localized brain activity, you will need MNE-Python, plus FreeSurfer to convert structural MRI scans into models of the scalp, inner/outer skull, and cortical surfaces (specifically, for command-line functions mne flash_bem, mne watershed_bem, and mne make_scalp_surfaces). If you follow the recommended installation procedure using anaconda, you don’t need to do anything extra — Freesurfer will automatically be installed.

Getting help

Help with installation is available through the MNE Forum. See the Getting help page for more information.

Next: Installing MNE-Python