NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
MNE-Python is an open-source Python package for exploring, visualizing, and analyzing human neurophysiological data. It provides methods for data input/output, preprocessing, visualization, source estimation, time-frequency analysis, machine learning, and statistics.
Last release 23 days ago
11 Sep 2026
Ships fairly regularly
a new release about every 2 months
Rarely documented
notes for 13 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
15 years old
89 releases · first in 2011
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
The functions lcmv, lcmv_epochs, and lcmv_raw are now deprecated in favor of mne.beamformer.make_lcmv and mne.beamformer.apply_lcmv, mne.beamformer.ap…
Add possibility to pass dict of floats as argument to mne.make_ad_hoc_cov by `Nathalie Gayraud`_
Add support for metadata in mne.Epochs by `Chris Holdgraf`_, `Alex Gramfort`_, `Jona Sassenhagen`_, and `Eric Larson`_
Add support for plotting a dense head in mne.viz.plot_alignment by `Eric Larson`_
Allow plotting in user-created mayavi Scene in mne.viz.plot_alignment by `Daniel McCloy`_
Reduce memory consumption and do not require data to be loaded in mne.Epochs.apply_baseline by `Eric Larson`_
Add option render_bem to mne.Report.parse_folder by `Eric Larson`_
Add to mne.viz.plot_alignment plotting of coordinate frame axes via show_axes and terrain-style interaction via interaction, by `Eric Larson`_
Add option initial_event to mne.find_events by `Clemens Brunner`_
Left and right arrow keys now scroll by 25% of the visible data, whereas Shift+left/right scroll by a whole page in mne.io.Raw.plot by `Clemens Brunner`_
Add support for gantry tilt angle determination from Elekta FIF file header by `Chris Bailey`_
Add possibility to concatenate mne.Annotations objects with + or += operators by `Clemens Brunner`_
Add support for MaxShield raw files in mne.Report by `Eric Larson`_
Add ability to plot whitened data in mne.io.Raw.plot, mne.Epochs.plot, mne.Evoked.plot, and mne.Evoked.plot_topo by `Eric Larson`_
Workaround for reading EGI MFF files with physiological signals that also present a bug from the EGI system in mne.io.read_raw_egi by `Federico Raimondo`_
Add support for reading subject height and weight in info['subject_info'] by `Eric Larson`_
Improve online filtering of raw data when plotting with mne.io.Raw.plot to filter in segments in accordance with the default skip_by_annotation=('edge', 'bad_acq_skip') of mne.io.Raw.filter to avoid edge ringing by `Eric Larson`_
Add support for multiple head position files, plotting of sensors, and control of plotting color and axes in mne.viz.plot_head_positions by `Eric Larson`_
Add ability to read and write Annotations separate from mne.io.Raw instances via Annotations.save and read_annotations by `Eric Larson`_
Add option to unset a montage by passing None to mne.io.Raw.set_montage by `Clemens Brunner`_
Add sensor denoising via mne.preprocessing.oversampled_temporal_projection by `Eric Larson`_
Add mne.io.pick.get_channel_types which returns all available channel types in MNE by `Clemens Brunner`_
Use standard PCA instead of randomized PCA whitening prior to ICA to increase reproducibility by `Clemens Brunner`_
Plot sEEG electrodes in mne.viz.plot_alignment by `Alex Gramfort`_
Add support for any data type like sEEG or ECoG in covariance related functions (estimation, whitening and plotting) by `Alex Gramfort`_ and `Eric Larson`_
Add function mne.io.read_annotations_eeglab to allow loading annotations from EEGLAB files, by `Alex Gramfort`_
mne.io.Raw.set_montage now accepts a string as its montage argument; this will set a builtin montage, by `Clemens Brunner`_
Add 4D BTi phantom dataset mne.datasets.phantom_4dbti.data_path, by `Alex Gramfort`_
Changed the background color to grey in mne.viz.plot_alignment to make helmet more visible, by `Alex Gramfort`_
Add mne.io.Raw.reorder_channels, mne.Evoked.reorder_channels, etc. to reorder channels, by `Eric Larson`_
Add to mne coreg and mne.gui.coregistration by `Eric Larson`_:
Improved visibility of points inside the head
Projection of EEG electrodes
Orientation of extra points toward the surface
Scaling points by distance to the head surface
Display of HPI points
ICP fitting with convergence criteria
Faster display updates
Scaling of mri/*.mgz files
Scaling of mri/trainsforms/talairach.xfm files for conversion to MNI space
Add ability to exclude components interactively by clicking on their labels in mne.preprocessing.ICA.plot_components by `Mikołaj Magnuski`_
Add reader for manual annotations of raw data produced by Brainstorm by `Anne-Sophie Dubarry`_
Add eLORETA noise normalization for minimum-norm solvers by `Eric Larson`_
Tighter duality gap computation in mne.inverse_sparse.tf_mxne_optim and new parametrization with alpha and l1_ratio instead of alpha_space and alpha_time by `Mathurin Massias`_ and `Daniel Strohmeier`_
Add dgap_freq parameter in mne.inverse_sparse.mxne_optim solvers to control the frequency of duality gap computation by `Mathurin Massias`_ and `Daniel Strohmeier`_
Add support for reading Eximia files by `Eric Larson`_ and `Federico Raimondo`_
Add the Picard algorithm to perform ICA for mne.preprocessing.ICA, by `Pierre Ablin`_ and `Alex Gramfort`_
Add ability to supply a mask to the plot in mne.viz.plot_evoked_image by `Jona Sassenhagen`_
Add connectivity=False to cluster-based statistical functions to perform non-clustering stats by `Eric Larson`_
Add mne.time_frequency.csd_morlet and mne.time_frequency.csd_array_morlet to estimate cross-spectral density using Morlet wavelets, by `Marijn van Vliet`_
Add multidictionary time-frequency support to mne.inverse_sparse.tf_mixed_norm by `Mathurin Massias`_ and `Daniel Strohmeier`_
Add new DICS implementation as mne.beamformer.make_dics, mne.beamformer.apply_dics, mne.beamformer.apply_dics_csd and mne.beamformer.apply_dics_epochs, by `Marijn van Vliet`_ and `Susanna Aro`_
Fix bug in EEG interpolation code to do nothing if there is no channel to interpolate by `Mainak Jas`_
Fix bug in mne.preprocessing.peak_finder to output datatype consistently and added input check for empty vectors by `Tommy Clausner`_
Fix bug in mne.io.read_raw_brainvision to use the correct conversion for filters from time constant to frequency by `Stefan Appelhoff`_
Fix bug with events when saving split files using mne.Epochs.save by `Eric Larson`_
Fix bug in mne.decoding.SlidingEstimator and mne.decoding.GeneralizingEstimator to allow mne.decoding.cross_val_multiscore to automatically detect whether the base_estimator is a classifier and use a StratifiedKFold instead of a KFold when cv is not specified, by `Jean-Rémi King`_
Fix bug in mne.set_eeg_reference to remove an average reference projector when setting the reference to [] (i.e. do not change the existing reference) by `Clemens Brunner`_
Fix bug in threshold-free cluster enhancement parameter validation (mne.stats.permutation_cluster_1samp_test and mne.stats.permutation_cluster_test) by `Clemens Brunner`_
Fix bug in mne.io.Raw.plot to correctly display event types when annotations are present by `Clemens Brunner`_
Fix bug in mne.stats.spatio_temporal_cluster_test default value for threshold is now calculated based on the array sizes in X, by `Eric Larson`_
Fix bug in mne.simulation.simulate_raw with use_cps=True where CPS was not actually used by `Eric Larson`_
Fix bug in mne.simulation.simulate_raw where 1- and 3-layer BEMs were not properly transformed using trans by `Eric Larson`_
Fix bug in mne.viz.plot_alignment where the head surface file -head.fif was not used even though present by `Chris Bailey`_
Fix bug when writing compressed sparse column matrices (e.g., Maxwell filtering cross-talk matrices) by `Marijn van Vliet`_ and `Eric Larson`_
Fix bug in mne.io.Raw.plot_psd to correctly deal with reject_by_annotation=False by `Clemens Brunner`_
Fix bug in mne.make_fixed_length_events when hitting corner case problems rounding to sample numbers by `Eric Larson`_
Fix bug in mne.Epochs when passing events as list with event_id=None by `Alex Gramfort`_
Fix bug in mne.Report.add_figs_to_section when passing numpy.ndarray by `Eric Larson`_
Fix bug in CSS class setting in mne.Report BEM section by `Eric Larson`_
Fix bug in Annotations where annotations that extend to the end of a recording were not extended properly by `Eric Larson`_
Fix bug in mne.io.Raw.filter to properly raw data with acquisition skips in separate segments by `Eric Larson`_
Fix bug in mne.preprocessing.maxwell_filter where homogeneous fields were not removed for CTF systems by `Eric Larson`_
Fix computation of average quaternions in mne.preprocessing.maxwell_filter by `Eric Larson`_
Fix bug in writing raw.annotations where empty annotations could not be written to disk, by `Eric Larson`_
Fix support for writing FIF files with acquisition skips by using empty buffers rather than writing zeros by `Eric Larson`_
Fix bug in the mne make_scalp_surfaces command where --force (to bypass topology check failures) was ignored by `Eric Larson`_
Fix bug in mne.preprocessing.maxwell_filter when providing origin in 'meg' coordinate frame for recordings with a MEG to head transform (i.e., non empty-room recordings) by `Eric Larson`_
Fix bug in mne.viz.plot_cov that ignored colorbar argument by `Nathalie Gayraud`_
Fix bug when picking CTF channels that could cause data saved to disk to be unreadable by `Eric Larson`_
Fix bug when reading event latencies (in samples) from eeglab files didn't translate indices to 0-based python indexing by `Mikołaj Magnuski`_
Fix consistency between mne.Epochs and mne.stats.linear_regression_raw in converting between samples and times (mne.stats.linear_regression_raw now rounds, instead of truncating) by `Phillip Alday`_
Fix bug in mne coreg where sphere surfaces were scaled by `Eric Larson`_
Fix bug in mne.Evoked.plot_topomap when using proj='interactive' mode by `Eric Larson`_
Fix bug when passing show_sensors=1 to mne.viz.plot_compare_evokeds resulted in sensors legend placed in lower right of the figure (position 4 in matplotlib), not upper right by `Mikołaj Magnuski`_
Fix handling of annotations when cropping and concatenating raw data by `Alex Gramfort`_ and `Eric Larson`_
Fix bug in mne.preprocessing.create_ecg_epochs where keep_ecg=False was ignored by `Eric Larson`_
Fix bug in mne.io.Raw.plot_psd when picks is not None and picks spans more than one channel type by `Eric Larson`_
Fix bug in mne.make_forward_solution when passing data with compensation channels (e.g. CTF) that contain bad channels by `Alex Gramfort`_
Fix bug in mne.SourceEstimate.get_peak and mne.VolSourceEstimate.get_peak when there is only a single time point by `Marijn van Vliet`_
Fix bug in mne.io.read_raw_edf when reading BDF files stimulus channels are now not scaled anymore by `Clemens Brunner`_
Channels with unknown locations are now assigned position [np.nan, np.nan, np.nan] instead of [0., 0., 0.], by `Eric Larson`_
Removed unused image_mask argument from mne.viz.plot_topomap by `Eric Larson`_
Unknown measurement dates are now stored as info['meas_date'] = None rather than using the current date. None is also now used when anonymizing data and when determining the machine ID for writing files, by `Mainak Jas`_ and `Eric Larson`_
mne.Evoked.plot will now append the number of epochs averaged for the evoked data in the first plot title, by `Eric Larson`_
Changed the line width in mne.viz.plot_bem from 2.0 to 1.0 for better visibility of underlying structures, by `Eric Larson`_
Changed the behavior of mne.io.Raw.pick_channels and similar methods to be consistent with mne.pick_channels to treat channel list as a set (ignoring order) -- if reordering is necessary use inst.reorder_channels, by `Eric Larson`_
Changed the labeling of some plotting functions to use more standard capitalization and units, e.g. "Time (s)" instead of "time [sec]" by `Eric Larson`_
mne.time_frequency.csd_epochs has been refactored into mne.time_frequency.csd_fourier and mne.time_frequency.csd_multitaper, by `Marijn van Vliet`_
mne.time_frequency.csd_array has been refactored into mne.time_frequency.csd_array_fourier and mne.time_frequency.csd_array_multitaper, by `Marijn van Vliet`_
Added clean_names=False parameter to mne.io.read_raw_ctf for control over cleaning of main channel names and compensation channel names from CTF suffixes by `Oleh Kozynets`_
The functions lcmv, lcmv_epochs, and lcmv_raw are now deprecated in favor of mne.beamformer.make_lcmv and mne.beamformer.apply_lcmv, mne.beamformer.apply_lcmv_epochs, and mne.beamformer.apply_lcmv_raw, by `Britta Westner`_
The functions mne.beamformer.dics, mne.beamformer.dics_epochs and mne.beamformer.dics_source_power are now deprecated in favor of mne.beamformer.make_dics, mne.beamformer.apply_dics, and mne.beamformer.apply_dics_csd, by `Marijn van Vliet`_
People who contributed to this release (in alphabetical order):
Alejandro Weinstein
Alexandre Gramfort
Annalisa Pascarella
Anne-Sophie Dubarry
Britta Westner
Chris Bailey
Chris Holdgraf
Christian Brodbeck
Claire Braboszcz
Clemens Brunner
Daniel McCloy
Denis A. Engemann
Desislava Petkova
Dominik Krzemiński
Eric Larson
Erik Hornberger
Fede Raimondo
Henrich Kolkhorst
Jean-Rémi King
Jen Evans
Joan Massich
Jon Houck
Jona Sassenhagen
Juergen Dammers
Jussi Nurminen
Kambiz Tavabi
Katrin Leinweber
Kostiantyn Maksymenko
Larry Eisenman
Luke Bloy
Mainak Jas
Marijn van Vliet
Mathurin Massias
Mikolaj Magnuski
Nathalie Gayraud
Oleh Kozynets
Phillip Alday
Pierre Ablin
Stefan Appelhoff
Stefan Repplinger
Tommy Clausner
Yaroslav Halchenko
Nothing published for this version
Nothing published for this version
mne.viz.decoding.plot_gat_times, mne.viz.decoding.plot_gat_matrix are now deprecated. Use matplotlib instead as shown in the examples, by Jean-Rémi Ki…
mne.channels.Layout.plot and mne.viz.plot_layout now allows plotting a subset of channels with picks argument by `Jaakko Leppakangas`_
Add .bvef extension (BrainVision Electrodes File) to mne.channels.read_montage by `Jean-Baptiste Schiratti`_
Add mne.decoding.cross_val_multiscore to allow scoring of multiple tasks, typically used with mne.decoding.SlidingEstimator, by `Jean-Rémi King`_
Add mne.decoding.ReceptiveField module for modeling electrode response to input features by `Chris Holdgraf`_
Add mne.decoding.TimeDelayingRidge class, used by default by mne.decoding.ReceptiveField, to speed up auto- and cross-correlation computations and enable Laplacian regularization by `Ross Maddox`_ and `Eric Larson`_
Add new mne.datasets.mtrf dataset by `Chris Holdgraf`_
Add example of time-frequency decoding with CSP by `Laura Gwilliams`_
Add mne.decoding.SPoC to fit and apply spatial filters based on continuous target variables, by `Jean-Rémi King`_ and `Alexandre Barachant`_
Add Fieldtrip's electromyogram dataset, by `Alexandre Barachant`_
Add reject_by_annotation option to mne.preprocessing.find_eog_events (which is also utilised by mne.preprocessing.create_eog_epochs) to omit data that is annotated as bad by `Jaakko Leppakangas`_
Add example for fast screening of event-related dynamics in frequency bands by `Denis Engemann`_
Add mne.time_frequency.EpochsTFR.save by `Jaakko Leppakangas`_
Add butterfly mode (toggled with 'b' key) to mne.io.Raw.plot by `Jaakko Leppakangas`_
Add axes parameter to plot_topo functions by `Jaakko Leppakangas`_
Add options to change time windowing in mne.chpi.filter_chpi by `Eric Larson`_
mne.channels.Montage.plot, mne.channels.DigMontage.plot, and mne.viz.plot_montage now allow plotting channel locations as a topomap by `Clemens Brunner`_
Add background_color parameter to mne.Evoked.plot_topo and mne.viz.plot_evoked_topo and improve axes rendering as done in mne.viz.plot_compare_evokeds by `Alex Gramfort`_
Add support for GDF files in mne.io.read_raw_edf by `Nicolas Barascud`_
Add mne.io.find_edf_events for getting the events as they are in the EDF/GDF header by `Jaakko Leppakangas`_
Speed up mne.io.Raw.plot and mne.Epochs.plot using (automatic) decimation based on low-passing with decim='auto' parameter by `Eric Larson`_ and `Jaakko Leppakangas`_
Add mne.inverse_sparse.mxne_optim.dgap_l21l1 for computing the duality gap for TF-MxNE as the new stopping criterion by `Daniel Strohmeier`_
Add option to return a list of Dipole objects in sparse source imaging methods by `Daniel Strohmeier`_
Add mne.inverse_sparse.make_stc_from_dipoles to generate stc objects from lists of dipoles by `Daniel Strohmeier`_
Add mne.channels.find_ch_connectivity that tries to infer the correct connectivity template using channel info. If no template is found, it computes the connectivity matrix using Delaunay triangulation of the 2d projected channel positions by `Jaakko Leppakangas`_
Add IO support for EGI MFF format by `Jaakko Leppakangas`_ and `ramonapariciog`_
Add option to use matplotlib backend when plotting with mne.viz.plot_source_estimates by `Jaakko Leppakangas`_
Add mne.channels.Montage.get_pos2d to get the 2D positions of channels in a montage by `Clemens Brunner`_
Add MGH 60- and 70-channel standard montages to mne.channels.read_montage by `Eric Larson`_
Add option for embedding SVG instead of PNG in HTML for mne.Report by `Eric Larson`_
Add confidence intervals, number of free parameters, and χ² to mne.fit_dipole and mne.read_dipole by `Eric Larson`_
mne.SourceEstimate.data is now writable, writing to it will also update mne.SourceEstimate.times by `Marijn van Vliet`_
mne.io.Raw.plot and mne.Epochs.plot now use anti-aliasing to draw signals by `Clemens Brunner`_
Allow using saved DigMontage to import digitization to mne.gui.coregistration by `Jaakko Leppakangas`_
Add function mne.channels.get_builtin_montages to list all built-in montages by `Clemens Brunner`_
mne.decoding.SlidingEstimator and mne.decoding.GeneralizingEstimator now accept **fit_params at fitting by `Jean-Rémi King`_
Add mne.VectorSourceEstimate class which enables working with both source power and dipole orientations by `Marijn van Vliet`_
Add option pick_ori='vector' to mne.minimum_norm.apply_inverse to produce mne.VectorSourceEstimate by `Marijn van Vliet`_
Add support for numpy.random.RandomState argument to seed in statistical clustering functions and better documentation of exact 1-sample tests by `Eric Larson`_
Extend mne.viz.plot_epochs_image/mne.Epochs.plot_image with regards to grouping by or aggregating over channels. See the new example at examples/visualization/plot_roi_erpimage_by_rt.py by `Jona Sassenhagen`_
Add bootstrapped confidence intervals to mne.viz.plot_compare_evokeds by `Jona Sassenhagen`_ and `Denis Engemann`_
Add example on how to plot ERDS maps (also known as ERSP) by `Clemens Brunner`_
Add support for volume source spaces to spatial_src_connectivity and spatio_temporal_src_connectivity by `Alex Gramfort`_
Plotting raw data (mne.viz.plot_raw or mne.io.Raw.plot) with events now includes event numbers (if there are not more than 50 events on a page) by `Clemens Brunner`_
Add filtering functions mne.Epochs.filter and mne.Evoked.filter, as well as pad argument to mne.io.Raw.filter by `Eric Larson`_
Add high frequency somatosensory MEG dataset by `Jussi Nurminen`_
Add reduced set of labels for HCPMMP-1.0 parcellation in mne.datasets.fetch_hcp_mmp_parcellation by `Eric Larson`_
Enable morphing between hemispheres with mne.compute_morph_matrix by `Christian Brodbeck`_
Add return_residual to mne.minimum_norm.apply_inverse by `Eric Larson`_
Add return_drop_log to mne.preprocessing.compute_proj_eog and mne.preprocessing.compute_proj_ecg by `Eric Larson`_
Add time cursor and category/amplitude status message into the single-channel evoked plot by `Jussi Nurminen`_
Fixed a bug when creating spherical volumetric grid source spaces in setup_volume_source_space by improving the minimum-distance computations, which in general will decrease the number of used source space points by `Eric Larson`_
Fix bug in mne.io.read_raw_brainvision read .vhdr files with ANSI codepage by `Okba Bekhelifi`_ and `Alex Gramfort`_
Fix unit scaling when reading in EGI digitization files using mne.channels.read_dig_montage by `Matt Boggess`_
Fix picks default in mne.io.Raw.filter to include ref_meg channels by default by `Eric Larson`_
Fix mne.decoding.CSP order of spatial filter in patterns_ by `Alexandre Barachant`_
mne.concatenate_epochs now maintains the relative position of events during concatenation by `Alexandre Barachant`_
Fix bug in script mne make_scalp_surfaces by `Denis Engemann`_ (this bug prevented creation of high-resolution meshes when they were absent in the first place.)
Fix writing of raw files with empty set of annotations by `Jaakko Leppakangas`_
Fix bug in mne.preprocessing.ICA.plot_properties where merging gradiometers would fail by `Jaakko Leppakangas`_
Fix mne.viz.plot_sensors to maintain proper aspect ratio by `Eric Larson`_
Fix mne.viz.plot_topomap to allow 0 contours by `Jaakko Leppakangas`_
Fix mne.preprocessing.ICA source-picking to increase threshold for rank estimation to 1e-14 by `Jesper Duemose Nielsen`_
Fix mne.set_bipolar_reference to support duplicates in anodes by `Jean-Baptiste Schiratti`_ and `Alex Gramfort`_
Fix visuals of mne.viz.plot_evoked and a bug where ylim changes when using interactive topomap plotting by `Jaakko Leppakangas`_
Fix mne.Evoked.plot_topomap when using the mask argument with paired gradiometers by `Eric Larson`_
Fix bug in mne.Label.fill where an empty label raised an error, by `Eric Larson`_
Fix mne.io.read_raw_ctf to also include the samples in the last block by `Jaakko Leppakangas`_
Fix mne.preprocessing.ICA.save to close file before attempting to delete it when write fails by `Jesper Duemose Nielsen`_
Fix mne.simulation.simulate_evoked to use nave parameter instead of snr, by `Yousra Bekhti`_
Fix mne.read_bem_surfaces for BEM files missing normals by `Christian Brodbeck`_
Fix mne.transform_surface_to to actually copy when copy=True by `Eric Larson`_
Fix mne.io.read_raw_brainvision to read vectorized data correctly by `Jaakko Leppakangas`_ and `Phillip Alday`_
Fix mne.connectivity.spectral_connectivity so that if n_jobs > 1 it does not ignore last n_epochs % n_jobs epochs by `Mikołaj Magnuski`_
Fix mne.io.read_raw_edf to infer sampling rate correctly when reading EDF+ files where tal-channel has a higher sampling frequency by `Jaakko Leppakangas`_
Fix default value of kind='topomap' in mne.channels.Montage.plot to be consistent with mne.viz.plot_montage by `Clemens Brunner`_
Fix bug in to_data_frame where non-consecutive picks would make the function crash by `Jaakko Leppakangas`_
Fix channel picking and drop in mne.time_frequency.EpochsTFR by `Lukáš Hejtmánek`_
Fix mne.SourceEstimate.transform to properly update mne.SourceEstimate.times by `Marijn van Vliet`_
Fix mne.viz.plot_evoked_joint to allow custom titles without appending information about the channels by `Jaakko Leppakangas`_
Fix writing a forward solution after being processed by mne.forward.restrict_forward_to_label or mne.forward.restrict_forward_to_stc by `Marijn van Vliet`_
Fix bug in mne.viz.plot_compare_evokeds where truncate_yaxis was ignored (default is now False), by `Jona Sassenhagen`_
Fix bug in mne.viz.plot_evoked where all xlabels were removed when using spatial_colors=True, by `Jesper Duemose Nielsen`_
Fix field mapping mne.make_field_map and MEG bad channel interpolation functions (e.g., mne.Evoked.interpolate_bads) to choose a better number of components during pseudoinversion when few channels are available, by `Eric Larson`_
Fix bug in mne.io.read_raw_brainvision, changed default to read coordinate information if available and added test, by `Jesper Duemose Nielsen`_
Fix bug in mne.SourceEstimate.to_original_src where morphing failed if two vertices map to the same target vertex, by `Marijn van Vliet`_
Fix mne.preprocessing.Xdawn to give verbose error messages about rank deficiency and handle transforming mne.Evoked, by `Eric Larson`_
Fix bug in DC and Nyquist frequency multitaper PSD computations, e.g. in mne.time_frequency.psd_multitaper, by `Eric Larson`_
Fix default padding type for mne.Epochs.resample and mne.Evoked.resample to be 'edge' by default, by `Eric Larson`_
Fix mne.inverse_sparse.mixed_norm, mne.inverse_sparse.tf_mixed_norm and mne.inverse_sparse.gamma_map to work with volume source space and sphere head models in MEG by `Alex Gramfort`_ and `Yousra Bekhti`_
Fix mne.Evoked.as_type channel renaming to append '_v' instead of '_virtual' to channel names to comply with shorter naming (15 char) requirements, by `Eric Larson`_
Fix treatment of CTF HPI coils as fiducial points in mne.gui.coregistration by `Eric Larson`_
Fix resampling of events along with raw in mne.io.Raw to now take into consideration the value of first_samp by `Chris Bailey`_
Fix labels of PSD plots in mne.viz.plot_raw_psd by `Alejandro Weinstein`_
Fix depth weighting of sparse solvers (mne.inverse_sparse.mixed_norm, mne.inverse_sparse.tf_mixed_norm and mne.inverse_sparse.gamma_map) with free orientation source spaces to improve orientation estimation by `Alex Gramfort`_ and `Yousra Bekhti`_
Fix the threshold in mne.beamformer.rap_music to properly estimate the rank by `Yousra Bekhti`_
Fix treatment of vector inverse in mne.minimum_norm.apply_inverse_epochs by `Emily Stephen`_
Fix mne.find_events when passing a list as stim_channel parameter by `Alex Gramfort`_
Fix parallel processing when computing covariance with shrinkage estimators by `Denis Engemann`_
Removed the mne.datasets.megsim dataset because it was taken down by its host (MRN). Use the mne.simulation functions instead, by `Eric Larson`_
Add skip_by_annotation to mne.io.Raw.filter to process data concatenated with e.g. mne.concatenate_raws separately. This parameter will default to the old behavior (treating all data as a single block) in 0.15 but will change to skip_by_annotation='edge', which will separately filter the concatenated chunks separately, in 0.16. This should help prevent potential problems with filter-induced ringing in concatenated files, by `Eric Larson`_
ICA channel names have now been reformatted to start from zero, e.g. "ICA000", to match indexing schemes in mne.preprocessing.ICA and related functions, by `Stefan Repplinger`_ and `Eric Larson`_
Add mne.beamformer.make_lcmv and mne.beamformer.apply_lcmv, mne.beamformer.apply_lcmv_epochs, and mne.beamformer.apply_lcmv_raw to enable the separate computation and application of LCMV beamformer weights by `Britta Westner`_, `Alex Gramfort`_, and `Denis Engemann`_.
Add weight_norm parameter to enable both unit-noise-gain beamformer and neural activity index (weight normalization) and make whitening optional by allowing noise_cov=None in mne.beamformer.lcmv, mne.beamformer.lcmv_epochs, and mne.beamformer.lcmv_raw, by `Britta Westner`_, `Alex Gramfort`_, and `Denis Engemann`_.
Add new filtering mode fir_design='firwin' (default in the next 0.16 release) that gets improved attenuation using fewer samples compared to fir_design='firwin2' (default in the current 0.15 release) by `Eric Larson`_
Make the goodness of fit (GOF) of the dipoles returned by mne.beamformer.rap_music consistent with the GOF of dipoles returned by mne.fit_dipole by `Alex Gramfort`_.
mne.decoding.SlidingEstimator will now replace mne.decoding.TimeDecoding to make it generic and fully compatible with scikit-learn, by `Jean-Rémi King`_ and `Alex Gramfort`_
mne.decoding.GeneralizingEstimator will now replace mne.decoding.GeneralizationAcrossTime to make it generic and fully compatible with scikit-learn, by `Jean-Rémi King`_ and `Alex Gramfort`_
mne.viz.decoding.plot_gat_times, mne.viz.decoding.plot_gat_matrix are now deprecated. Use matplotlib instead as shown in the examples, by `Jean-Rémi King`_ and `Alex Gramfort`_
Add norm_trace parameter to control single-epoch covariance normalization in mne.decoding.CSP, by `Jean-Rémi King`_
Allow passing a list of channel names as show_names in function mne.viz.plot_sensors and methods mne.Evoked.plot_sensors, mne.Epochs.plot_sensors and mne.io.Raw.plot_sensors to show only a subset of channel names by `Jaakko Leppakangas`_
Make function mne.io.eeglab.read_events_eeglab public to allow loading overlapping events from EEGLAB files, by `Jona Sassenhagen`_.
mne.find_events mask_type parameter will change from 'not_and' to 'and' in 0.16.
Instead of raising an error, duplicate channel names in the data file are now appended with a running number by `Jaakko Leppakangas`_
mne.io.read_raw_edf has now 'auto' option for stim_channel (default in version 0.16) that automatically detects if EDF annotations or GDF events exist in the header and constructs the stim channel based on these events by `Jaakko Leppakangas`_
mne.io.Raw.plot_psd now rejects data annotated bad by default. Turn off with reject_by_annotation=False, by `Eric Larson`_
mne.set_eeg_reference and the related methods (e.g., mne.io.Raw.set_eeg_reference) have a new argument projection, which if set to False directly applies an average reference instead of adding an SSP projector, by `Clemens Brunner`_
Deprecate plot_trans in favor of mne.viz.plot_alignment and add bem parameter for plotting conductor model by `Jaakko Leppakangas`_
mne.beamformer.tf_lcmv now has a raw parameter to accommodate epochs objects that already have data loaded with preload=True, with mne.Epochs.load_data, or that are read from disk, by `Eric Larson`_
mne.time_frequency.psd_welch and mne.time_frequency.psd_array_welch now use a Hamming window (instead of a Hann window) by `Clemens Brunner`_
picks parameter in mne.beamformer.lcmv, mne.beamformer.lcmv_epochs, mne.beamformer.lcmv_raw, mne.beamformer.tf_lcmv and mne.beamformer.rap_music is now deprecated and will be removed in 0.16, by `Britta Westner`_, `Alex Gramfort`_, and `Denis Engemann`_.
The keyword argument frequencies has been deprecated in favor of freqs in various time-frequency functions, e.g. mne.time_frequency.tfr_array_morlet, by `Eric Larson`_
Add patterns=False parameter in mne.decoding.ReceptiveField. Turn on to compute inverse model coefficients, by `Nicolas Barascud`_
The scale, scale_time, and unit parameters have been deprecated in favor of scalings, scalings_time, and units in mne.viz.plot_evoked_topomap and related functions, by `Eric Larson`_
loose parameter in inverse solvers has now a default value 'auto' depending if the source space is a surface, volume, or discrete type by `Alex Gramfort`_ and `Yousra Bekhti`_
The behavior of 'mean_flip' label-flipping in mne.extract_label_time_course and related functions has been changed such that the flip, instead of having arbitrary sign, maximally aligns in the positive direction of the normals of the label, by `Eric Larson`_
Deprecate force_fixed and surf_ori in mne.read_forward_solution by `Daniel Strohmeier`_
mne.convert_forward_solution has a new argument use_cps, which controls whether information on cortical patch statistics is applied while generating surface-oriented forward solutions with free and fixed orientation by `Daniel Strohmeier`_
mne.write_forward_solution writes a forward solution as a forward solution with free orientation in X/Y/Z RAS coordinates if it is derived from a forward solution with free orientation and as a forward solution with fixed orientation in surface-based local coordinates otherwise by `Daniel Strohmeier`_
loose=None in inverse solvers is deprecated, use explicitly loose=0 for fixed constraint and loose=1.0 for free orientations by `Eric Larson`_
Zero-channel-value in PSD calculation in mne.viz.plot_raw_psd has been relaxed from error to warning by `Alejandro Weinstein`_
Expose "rank" parameter in mne.viz.plot_evoked_white to correct rank estimates on the spot during visualization by `Denis Engemann`_, `Eric Larson`_, `Alex Gramfort`_.
Show channel name under mouse cursor on topography plots by `Jussi Nurminen`_
Return maximum response amplitude from mne.Evoked.get_peak
People who contributed to this release (in alphabetical order):
akshay0724
Alejandro Weinstein
Alexander Rudiuk
Alexandre Barachant
Alexandre Gramfort
Andrew Dykstra
Britta Westner
Chris Bailey
Chris Holdgraf
Christian Brodbeck
Christopher Holdgraf
Clemens Brunner
Cristóbal Moënne-Loccoz
Daniel McCloy
Daniel Strohmeier
Denis A. Engemann
Emily P. Stephen
Eric Larson
Fede Raimondo
Jaakko Leppakangas
Jean-Baptiste Schiratti
Jean-Rémi King
Jesper Duemose Nielsen
Joan Massich
Jon Houck
Jona Sassenhagen
Jussi Nurminen
Laetitia Grabot
Laura Gwilliams
Luke Bloy
Lukáš Hejtmánek
Mainak Jas
Marijn van Vliet
Mathurin Massias
Matt Boggess
Mikolaj Magnuski
Nicolas Barascud
Nicole Proulx
Phillip Alday
ramonapariciog
Robin Tibor Schirrmeister
Rodrigo Hübner
Gutstein
Simon Kern
Teon Brooks
Yousra Bekhti
Nothing published for this version
The filtering functions band_pass_filter, band_stop_filter, low_pass_filter, and high_pass_filter have been deprecated in favor of mne.filter.filter_d…
Add example of time-frequency decoding with CSP by `Laura Gwilliams`_
Automatically create a legend in mne.viz.plot_evoked_topo by `Jussi Nurminen`_
Add I/O support for Artemis123 infant/toddler MEG data by `Luke Bloy`_
Add filter plotting functions mne.viz.plot_filter and mne.viz.plot_ideal_filter as well as filter creation function mne.filter.create_filter by `Eric Larson`_
Add HCP-MMP1.0 parcellation dataset downloader by `Eric Larson`_
Add option to project EEG electrodes onto the scalp in mne.viz.plot_trans by `Eric Larson`_
Add option to plot individual sensors in mne.io.Raw.plot_psd by `Alex Gramfort`_ and `Eric Larson`_
Add option to plot ECoG electrodes in mne.viz.plot_trans by `Eric Larson`_
Add convenient default values to mne.io.Raw.apply_hilbert and mne.io.Raw.apply_function by `Denis Engemann`_
Remove MNE-C requirement for mne make_scalp_surfaces by `Eric Larson`_
Add support for FastTrack Polhemus .mat file outputs in hsp argument of mne.channels.read_dig_montage by `Eric Larson`_
Add option to convert 3d electrode plots to a snapshot with 2d electrode positions with mne.viz.snapshot_brain_montage by `Chris Holdgraf`_
Add skull surface plotting option to mne.viz.plot_trans by `Jaakko Leppakangas`_
Add minimum-phase filtering option in mne.io.Raw.filter by `Eric Larson`_
Add support for reading ASCII BrainVision files in mne.io.read_raw_brainvision by `Eric Larson`_
Add method of ICA objects for retrieving the component maps mne.preprocessing.ICA.get_components by `Jona Sassenhagen`_
Add option to plot events in mne.viz.plot_epochs by `Jaakko Leppakangas`_
Add dipole definitions for older phantom at Otaniemi in mne.dipole.get_phantom_dipoles by `Eric Larson`_
Add spatial colors option for mne.viz.plot_raw_psd by `Jaakko Leppakangas`_
Add functions like get_volume_labels_from_src to handle mixed source spaces by `Annalisa Pascarella`_
Add convenience function for opening MNE documentation open_docs by `Eric Larson`_
Add option in mne.io.Raw.plot to display the time axis relative to raw.first_samp by `Mainak Jas`_
Add new mne.datasets.visual_92_categories dataset by `Jaakko Leppakangas`_
Add option in mne.io.read_raw_edf to allow channel exclusion by `Jaakko Leppakangas`_
Allow integer event codes in mne.read_epochs_eeglab by `Jaakko Leppakangas`_
Add ability to match channel names in a case insensitive manner when applying a mne.channels.Montage by `Marijn van Vliet`_
Add yscale keyword argument to mne.time_frequency.AverageTFR.plot that allows specifying whether to present the frequency axis in linear ('linear') or log ('log') scale. The default value is 'auto' which detects whether frequencies are log-spaced and sets yscale to log. Added by `Mikołaj Magnuski`_
Add Representational Similarity Analysis (RSA) example on mne.datasets.visual_92_categories.data_path dataset by `Jaakko Leppakangas`_, `Jean-Rémi King`_ and `Alex Gramfort`_
Add support for NeuroScan files with event type 3 in mne.io.read_raw_cnt by `Marijn van Vliet`_
Add interactive annotation mode to mne.io.Raw.plot (accessed by pressing 'a') by `Jaakko Leppakangas`_
Add support for deleting all projectors or a list of indices in mne.io.Raw.del_proj by `Eric Larson`_
Add source space plotting with mne.SourceSpaces.plot using mne.viz.plot_trans by `Eric Larson`_
Add mne.decoding.get_coef to retrieve and inverse the coefficients of a linear model - typically a spatial filter or pattern, by `Jean-Rémi King`_
Add support for reading in EGI MFF digitization coordinate files in mne.channels.read_dig_montage by `Matt Boggess`_
Add n_per_seg keyword argument to mne.time_frequency.psd_welch and mne.time_frequency.psd_array_welch that allows to control segment length independently of n_fft and use zero-padding when n_fft > n_per_seg by `Mikołaj Magnuski`_
Add annotation aware data getter mne.io.Raw.get_data by `Jaakko Leppakangas`_
Add support of dipole location visualization with MRI slice overlay with matplotlib to mne.viz.plot_dipole_locations via mode='orthoview' parameter by `Jaakko Leppakangas`_ and `Alex Gramfort`_
Add plotting of head positions as a function of time in mne.viz.plot_head_positions by `Eric Larson`_
Add real_filter option to mne.beamformer.dics, mne.beamformer.dics_source_power, mne.beamformer.tf_dics and mne.beamformer.dics_epochs by `Eric Larson`_, `Alex Gramfort`_ and `Andrea Brovelli`_.
Add a demo script showing how to use a custom inverse solver with MNE by `Alex Gramfort`_
Functions mne.preprocessing.create_ecg_epochs, mne.preprocessing.create_eog_epochs, mne.compute_raw_covariance and ICA methods mne.preprocessing.ICA.score_sources, mne.preprocessing.ICA.find_bads_ecg, mne.preprocessing.ICA.find_bads_eog are now annotation aware by `Jaakko Leppakangas`_
Allow using spatial_colors for non-standard layouts by creating custom layouts from channel locations and add to_sphere keyword to mne.viz.plot_sensors to allow plotting sensors that are not on the head surface by `Jaakko Leppakangas`_
Concatenating raws with mne.concatenate_raws now creates boundary annotations automatically by `Jaakko Leppakangas`_
mne.viz.plot_projs_topomap now supports plotting EEG topomaps by passing in mne.Info by `Eric Larson`_
Fix bug with DICS and LCMV (e.g., mne.beamformer.lcmv, mne.beamformer.dics) where regularization was done improperly. The default reg=0.01 has been changed to reg=0.05, by `Andrea Brovelli`_, `Alex Gramfort`_, and `Eric Larson`_
Fix callback function call in mne.viz.topo._plot_topo_onpick by `Erkka Heinila`_
Fix reading multi-file CTF recordings in mne.io.read_raw_ctf by `Niklas Wilming`_
Fix computation of AR coefficients across channels in mne.time_frequency.fit_iir_model_raw by `Eric Larson`_
Fix maxfilter channel names extra space bug in mne.preprocessing.maxwell_filter by `Sheraz Khan`_
mne.channels.find_layout now leaves out the excluded channels by `Jaakko Leppakangas`_
Array data constructors mne.io.RawArray and EvokedArray now make a copy of the info structure by `Jaakko Leppakangas`_
Fix bug with finding layouts in mne.viz.plot_projs_topomap by `Eric Larson`_
Fix bug mne.io.anonymize_info when Info does not contain 'file_id' or 'meas_id' fields by `Jean-Rémi King`_
Fix colormap selection in mne.viz.plot_evoked_topomap when using positive vmin with negative data by `Jaakko Leppakangas`_
Fix channel name comparison in mne.channels.read_montage so that if ch_names is provided, the returned montage will have channel names in the same letter case by `Jaakko Leppakangas`_
Fix inst.set_montage(montage) to only set inst.info['dev_head_t'] if dev_head_t=True in mne.channels.read_dig_montage by `Eric Larson`_
Fix handling of events in mne.realtime.RtEpochs when the triggers were split between two buffers resulting in missing and/or duplicate epochs by `Mainak Jas`_ and `Antti Rantala`_
Fix bug with automatic decimation in mne.io.read_raw_kit by `Keith Doelling`_
Fix bug with setup_volume_source_space where arguments subject and subjects_dir were ignored by `Jaakko Leppakangas`_
Fix sanity check for incompatible threshold and tail values in clustering functions like mne.stats.spatio_temporal_cluster_1samp_test by `Eric Larson`_
Fix _bad_dropped not being set when loading eeglab epoched files via mne.read_epochs_eeglab which resulted in len not working by `Mikołaj Magnuski`_
Fix a bug in mne.time_frequency.AverageTFR.plot when plotting without a colorbar by `Jaakko Leppakangas`_
Fix _filenames attribute in creation of mne.io.RawArray with mne.preprocessing.ICA.get_sources by `Paul Pasler`_
Fix contour levels in mne.viz.plot_evoked_topomap to be uniform across topomaps by `Jaakko Leppakangas`_
Fix bug in mne.preprocessing.maxwell_filter where fine calibration indices were mismatched leading to an AssertionError by `Eric Larson`_
Fix bug in mne.preprocessing.fix_stim_artifact where non-data channels were interpolated by `Eric Larson`_
mne.decoding.Scaler now scales each channel independently using data from all time points (epochs and times) instead of scaling all channels for each time point. It also now accepts parameter scalings to determine the data scaling method (default is None to use static channel-type-based scaling), by `Asish Panda`_, `Jean-Rémi King`_, and `Eric Larson`_
Raise error if the cv parameter of mne.decoding.GeneralizationAcrossTime and mne.decoding.TimeDecoding is not a partition and the predict_mode is "cross-validation" by `Jean-Rémi King`_
Fix bug in mne.io.read_raw_edf when preload=False and channels have different sampling rates by `Jaakko Leppakangas`_
Fix mne.read_labels_from_annot to set label.values[:]=1 rather than 0 for consistency with the Label class by `Jon Houck`_
Fix plotting non-uniform freqs (for example log-spaced) in mne.time_frequency.AverageTFR.plot by `Mikołaj Magnuski`_
Fix mne.minimum_norm.compute_source_psd when used with pick_ori=None by `Annalisa Pascarella`_ and `Alex Gramfort`_
Fix bug in mne.Annotations where concatenating two raws where orig_time of the second run is None by `Jaakko Leppakangas`_
Fix reading channel location from eeglab .set files when some of the channels do not provide this information. Previously all channel locations were ignored in such case, now they are read - unless a montage is provided by the user in which case only channel names are read from set file. By `Mikołaj Magnuski`_
Fix reading eeglab .set files when .chanlocs structure does not contain X, Y or Z fields by `Mikołaj Magnuski`_
Fix bug with mne.simulation.simulate_raw when interp != 'zero' by `Eric Larson`_
Fix mne.fit_dipole to handle sphere model rank deficiency properly by `Alex Gramfort`_
Raise error in mne.concatenate_epochs when concatenated epochs have conflicting event_id by `Mikołaj Magnuski`_
Fix handling of n_components=None in mne.preprocessing.ICA by `Richard Höchenberger`_
Fix reading of fiducials correctly from CTF data in mne.io.read_raw_ctf by `Jaakko Leppakangas`_
Fix mne.beamformer.rap_music to return dipoles with amplitudes in Am instead of nAm by `Jaakko Leppakangas`_
Fix computation of duality gap in mne.inverse_sparse.mxne_optim.dgap_l21 by `Mathurin Massias`_
The filtering functions band_pass_filter, band_stop_filter, low_pass_filter, and high_pass_filter have been deprecated in favor of mne.filter.filter_data by `Eric Larson`_
EvokedArray now has default value tmin=0. by `Jaakko Leppakangas`_
The ch_type argument for mne.viz.plot_trans has been deprecated, use eeg_sensors and meg_sensors instead, by `Eric Larson`_
The default tmax=60. in mne.io.Raw.plot_psd will change to tmax=np.inf in 0.15, by `Eric Larson`_
Base classes mne.io.BaseRaw and mne.BaseEpochs are now public to allow easier typechecking, by `Daniel McCloy`_
mne.io.read_raw_edf now combines triggers from multiple tal channels to 'STI 014' by `Jaakko Leppakangas`_
The measurement info Info no longer contains a potentially misleading info['filename'] entry. Use class properties like mne.io.Raw.filenames or mne.Epochs.filename instead by `Eric Larson`_
Default fiducial name change from 'nz' to 'nasion' in mne.channels.read_montage, so that it is the same for both mne.channels.Montage and :class: mne.channels.DigMontage by `Leonardo Barbosa`_
MNE's additional files for the fsaverage head/brain model are now included in MNE-Python, and the now superfluous mne_root parameter to create_default_subject has been deprecated by `Christian Brodbeck`_
An overwrite=False default parameter has been added to write_source_spaces to protect against accidental overwrites, by `Eric Larson`_
The mne.decoding.LinearModel class will no longer support plot_filters and plot_patterns, use mne.EvokedArray with mne.decoding.get_coef instead, by `Jean-Rémi King`_
Made functions mne.time_frequency.tfr_array_multitaper, mne.time_frequency.tfr_array_morlet, mne.time_frequency.tfr_array_stockwell, mne.time_frequency.psd_array_multitaper and mne.time_frequency.psd_array_welch public to allow computing TFRs and PSDs on numpy arrays by `Jaakko Leppakangas`_
mne.preprocessing.ICA.fit now rejects data annotated bad by default. Turn off with reject_by_annotation=False, by `Jaakko Leppakangas`_
mne.io.read_raw_egi now names channels with pattern 'E<idx>'. This behavior can be changed with parameter channel_naming by `Jaakko Leppakangas`_
the name parameter in mne.Epochs is deprecated, by `Jaakko Leppakangas`_
People who contributed to this release (in alphabetical order):
Alexander Rudiuk
Alexandre Gramfort
Annalisa Pascarella
Antti Rantala
Asish Panda
Burkhard Maess
Chris Holdgraf
Christian Brodbeck
Cristóbal Moënne-Loccoz
Daniel McCloy
Denis A. Engemann
Eric Larson
Erkka Heinila
Hermann Sonntag
Jaakko Leppakangas
Jakub Kaczmarzyk
Jean-Rémi King
Jon Houck
Jona Sassenhagen
Jussi Nurminen
Keith Doelling
Leonardo S. Barbosa
Lorenz Esch
Lorenzo Alfine
Luke Bloy
Mainak Jas
Marijn van Vliet
Matt Boggess
Matteo Visconti
Mikolaj Magnuski
Niklas Wilming
Paul Pasler
Richard Höchenberger
Sheraz Khan
Stefan Repplinger
Teon Brooks
Yaroslav Halchenko
Nothing published for this version
Nothing published for this version
The add_eeg_ref argument in core functions like mne.io.read_raw_fif and mne.Epochs has been deprecated in favor of using mne.set_eeg_reference and equ…
Add new class AcqParserFIF to parse Elekta/Neuromag MEG acquisition info, allowing e.g. collecting epochs according to acquisition-defined averaging categories by `Jussi Nurminen`_
Adds automatic determination of FIR filter parameters filter_length, l_trans_bandwidth, and h_trans_bandwidth and adds phase argument in e.g. in mne.io.Raw.filter by `Eric Larson`_
Adds faster n_fft='auto' option to mne.io.Raw.apply_hilbert by `Eric Larson`_
Adds new function mne.time_frequency.csd_array to compute the cross-spectral density of multivariate signals stored in an array, by `Nick Foti`_
Add order params 'selection' and 'position' for mne.viz.plot_raw to allow plotting of specific brain regions by `Jaakko Leppakangas`_
Added the ability to decimate mne.Evoked objects with mne.Evoked.decimate by `Eric Larson`_
Add generic array-filtering function mne.filter.filter_data by `Eric Larson`_
mne.viz.plot_trans now also shows head position indicators by `Christian Brodbeck`_
Add label center of mass function mne.Label.center_of_mass by `Eric Larson`_
Added mne.viz.plot_ica_properties that allows plotting of independent component properties similar to pop_prop in EEGLAB. Also mne.preprocessing.ICA has mne.preprocessing.ICA.plot_properties method now. Added by `Mikołaj Magnuski`_
Add second-order sections (instead of (b, a) form) IIR filtering for reduced numerical error by `Eric Larson`_
Add interactive colormap option to image plotting functions by `Jaakko Leppakangas`_
Add support for the University of Maryland KIT system by `Christian Brodbeck`_
Add support for *.elp and *.hsp files to the KIT2FIFF converter and mne.channels.read_dig_montage by `Teon Brooks`_ and `Christian Brodbeck`_
Add option to preview events in the KIT2FIFF GUI by `Christian Brodbeck`_
Add approximation of size of io.Raw, Epochs, and Evoked in repr by `Eric Larson`_
Add possibility to select a subset of sensors by lasso selector to mne.viz.plot_sensors and mne.viz.plot_raw when using order='selection' or order='position' by `Jaakko Leppakangas`_
Add the option to plot brain surfaces and source spaces to viz.plot_bem by `Christian Brodbeck`_
Add the --filterchpi option to mne browse_raw, by `Félix Raimundo`_
Add the --no-decimate option to mne make_scalp_surfaces to skip the high-resolution surface decimation step, by `Eric Larson`_
Add new class mne.decoding.EMS to transform epochs with the event-matched spatial filters and add 'cv' parameter to mne.decoding.compute_ems, by `Jean-Rémi King`_
Added mne.time_frequency.EpochsTFR and average parameter in mne.time_frequency.tfr_morlet and mne.time_frequency.tfr_multitaper to compute time-frequency transforms on single trial epochs without averaging, by `Jean-Rémi King`_ and `Alex Gramfort`_
Added mne.decoding.TimeFrequency to transform signals in scikit-learn pipelines, by `Jean-Rémi King`_
Added mne.decoding.UnsupervisedSpatialFilter providing interface for scikit-learn decomposition algorithms to be used with MNE data, by `Jean-Rémi King`_ and `Asish Panda`_
Added support for multiclass decoding in mne.decoding.CSP, by `Jean-Rémi King`_ and `Alexandre Barachant`_
Components obtained from mne.preprocessing.ICA are now sorted by explained variance, by `Mikołaj Magnuski`_
Adding an EEG reference channel using mne.add_reference_channels will now use its digitized location from the FIFF file, if present, by `Chris Bailey`_
Added interactivity to mne.preprocessing.ICA.plot_components - passing an instance of io.Raw or Epochs in inst argument allows to open component properties by clicking on component topomaps, by `Mikołaj Magnuski`_
Adds new function mne.viz.plot_compare_evokeds to show multiple evoked time courses at a single location, or the mean over a ROI, or the GFP, automatically averaging and calculating a CI if multiple subjects are given, by `Jona Sassenhagen`_
Added transform_into parameter into mne.decoding.CSP to retrieve the average power of each source or the time course of each source, by `Jean-Rémi King`_
Added support for reading MaxShield (IAS) evoked data (e.g., from the acquisition machine) in mne.read_evokeds by `Eric Larson`_
Added support for functional near-infrared spectroscopy (fNIRS) channels by `Jaakko Leppakangas`_
Added mne.io.Raw.acqparser convenience attribute for mne.AcqParserFIF by `Eric Larson`_
Added example of Representational Similarity Analysis, by `Jean-Rémi King`_
Fixed a bug where selecting epochs using hierarchical event IDs (HIDs) was and-like instead of or-like. When doing e.g. epochs[('Auditory', 'Left')], previously all trials that contain 'Auditory' and 'Left' (like 'Auditory/Left') would be selected, but now any conditions matching 'Auditory' or 'Left' will be selected (like 'Auditory/Left', 'Auditory/Right', and 'Visual/Left'). This is now consistent with how epoch selection was done without HID tags, e.g. epochs[['a', 'b']] would select all epochs of type 'a' and type 'b'. By `Eric Larson`_
Fixed Infomax/Extended Infomax when the user provides an initial weights matrix by `Jair Montoya Martinez`_
Fixed the default raw FIF writing buffer size to be 1 second instead of 10 seconds by `Eric Larson`_
Fixed channel selection order when MEG channels do not come first in mne.preprocessing.maxwell_filter by `Eric Larson`_
Fixed color ranges to correspond to the colorbar when plotting several time instances with mne.viz.plot_evoked_topomap by `Jaakko Leppakangas`_
Added units to mne.io.read_raw_brainvision for reading non-data channels and enable default behavior of inferring channel type by unit by `Jaakko Leppakangas`_ and `Pablo Arias Sarah`_
Fixed minor bugs with mne.Epochs.resample and mne.Epochs.decimate by `Eric Larson`_
Fixed a bug where duplicate vertices were not strictly checked by mne.simulation.simulate_stc by `Eric Larson`_
Fixed a bug where some FIF files could not be read with mne.io.show_fiff by `Christian Brodbeck`_ and `Eric Larson`_
Fixed a bug where merge_grads=True causes mne.viz.plot_evoked_topo to fail when plotting a list of evokeds by `Jaakko Leppakangas`_
Fixed a bug when setting multiple bipolar references with set_bipolar_reference by `Marijn van Vliet`_.
Fixed image scaling in mne.viz.plot_epochs_image when plotting more than one channel by `Jaakko Leppakangas`_
Fixed mne.preprocessing.Xdawn to fit shuffled epochs by `Jean-Rémi King`_
Fixed a bug with channel order determination that could lead to an AssertionError when using mne.Covariance matrices by `Eric Larson`_
Fixed the check for CTF gradient compensation in mne.preprocessing.maxwell_filter by `Eric Larson`_
Fixed the import of EDF files with encoding characters in mne.io.read_raw_edf by `Guillaume Dumas`_
Fixed mne.Epochs to ensure that detrend parameter is not a boolean by `Jean-Rémi King`_
Fixed bug with mne.realtime.FieldTripClient.get_data_as_epoch when picks=None which crashed the function by `Mainak Jas`_
Fixed reading of units in .elc montage files (from UnitsPosition field) so that mne.channels.Montage objects are now returned with the pos attribute correctly in meters, by `Chris Mullins`_
Fixed reading of BrainVision files by `Phillip Alday`_:
Greater support for BVA files, especially older ones: alternate text coding schemes with fallback to Latin-1 as well as units in column headers
Use online software filter information when present
Fix comparisons of filter settings for determining "strictest"/"weakest" filter
Weakest filter is now used for heterogeneous channel filter settings, leading to more consistent behavior with filtering methods applied to a subset of channels (e.g. Raw.filter with picks != None).
Fixed plotting and timing of Annotations and restricted addition of annotations outside data range to prevent problems with cropping and concatenating data by `Jaakko Leppakangas`_
Fixed ICA plotting functions to refer to IC index instead of component number by `Andreas Højlund`_ and `Jaakko Leppakangas`_
Fixed bug with picks when interpolating MEG channels by `Mainak Jas`_.
Fixed bug in padding of Stockwell transform for signal of length a power of 2 by `Johannes Niediek`_
The add_eeg_ref argument in core functions like mne.io.read_raw_fif and mne.Epochs has been deprecated in favor of using mne.set_eeg_reference and equivalent instance methods like raw.set_eeg_reference(). In functions like mne.io.read_raw_fif where the default in 0.13 and older versions is add_eeg_ref=True, the default will change to add_eeg_ref=False in 0.14, and the argument will be removed in 0.15.
Multiple aspects of FIR filtering in MNE-Python has been refactored:
New recommended defaults for l_trans_bandwidth='auto', h_trans_bandwidth='auto', and filter_length='auto'. This should generally reduce filter artifacts at the expense of slight decrease in effective filter stop-band attenuation. For details see tut-filtering-in-python. The default values of l_trans_bandwidth=h_trans_bandwidth=0.5 and filter_length='10s' will change to 'auto' in 0.14.
The filter_length=None option (i.e. use len(x)) has been deprecated.
An improved phase='zero' zero-phase FIR filtering has been added. Instead of running the designed filter forward and backward, the filter is applied once and we compensate for the linear phase of the filter. The previous phase='zero-double' default will change to phase='zero' in 0.14.
A warning is provided when the filter is longer than the signal of interest, as this is unlikely to produce desired results.
Previously, if the filter was as long or longer than the signal of interest, direct FFT-based computations were used. Now a single code path (overlap-add filtering) is used for all FIR filters. This could cause minor changes in how short signals are filtered.
Support for Python 2.6 has been dropped, and the minimum supported dependencies are NumPy 1.8, SciPy 0.12, and Matplotlib_ 1.3 by `Eric Larson`_
When CTF gradient compensation is applied to raw data, it is no longer reverted on save of mne.io.Raw.save by `Eric Larson`_
Adds mne.time_frequency.csd_epochs to replace mne.time_frequency.csd_compute_epochs for naming consistency. mne.time_frequency.csd_compute_epochs is now deprecated and will be removed in mne 0.14, by `Nick Foti`_
Weighted addition and subtraction of Evoked as ev1 + ev2 and ev1 - ev2 have been deprecated, use explicit mne.combine_evoked(..., weights='nave') instead by `Eric Larson`_
Deprecated support for passing a list of filenames to mne.io.Raw constructor, use mne.io.read_raw_fif and mne.concatenate_raws instead by `Eric Larson`_
Added options for setting data and date formats manually in mne.io.read_raw_cnt by `Jaakko Leppakangas`_
Now channels with units of 'C', 'µS', 'uS', 'ARU' and 'S' will be turned to misc by default in mne.io.read_raw_brainvision by `Jaakko Leppakangas`_
Add mne.io.anonymize_info function to anonymize measurements and add methods to mne.io.Raw, mne.Epochs and mne.Evoked, by `Jean-Rémi King`_
Now it is possible to plot only a subselection of channels in mne.viz.plot_raw by using an array for order parameter by `Jaakko Leppakangas`_
EOG channels can now be included when calling mne.preprocessing.ICA.fit and a proper error is raised when trying to include unsupported channels by `Alexander Rudiuk`_
mne.concatenate_epochs and mne.compute_covariance now check to see if all Epochs instances have the same MEG-to-Head transformation, and errors by default if they do not by `Eric Larson`_
Added option to pass a list of axes to mne.viz.plot_epochs_image by `Mikołaj Magnuski`_
Constructing IIR filters in mne.filter.construct_iir_filter defaults to output='ba' in 0.13 but this will be changed to output='sos' by `Eric Larson`_
Add zorder parameter to mne.Evoked.plot and derived functions to sort allow sorting channels by e.g. standard deviation, by `Jona Sassenhagen`_
The baseline parameter of mne.Epochs.apply_baseline is set by default (None, 0), by `Félix Raimundo`_
Adds mne.Evoked.apply_baseline to be consistent with mne.Epochs.apply_baseline, by `Félix Raimundo`_
Deprecated the baseline parameter in mne.Evoked, by `Félix Raimundo`_
The API of mne.SourceEstimate.plot and mne.viz.plot_source_estimates has been updated to reflect current PySurfer 0.6 API. The config_opts parameter is now deprecated and will be removed in mne 0.14, and the default representation for time will change from ms to s in mne 0.14. By `Christian Brodbeck`_
The default dataset location has been changed from examples/ in the MNE-Python root directory to ~/mne_data in the user's home directory, by `Eric Larson`_
A new option set_env has been added to mne.set_config that defaults to False in 0.13 but will change to True in 0.14, by `Eric Larson`_
The compensation parameter in mne.io.read_raw_fif has been deprecated in favor of the method mne.io.Raw.apply_gradient_compensation by `Eric Larson`_
mne.decoding.EpochsVectorizer has been deprecated in favor of mne.decoding.Vectorizer by `Asish Panda`_
The epochs_data parameter has been deprecated in mne.decoding.CSP, in favour of the X parameter to comply to scikit-learn API, by `Jean-Rémi King`_
Deprecated mne.time_frequency.cwt_morlet and mne.time_frequency.single_trial_power in favour of mne.time_frequency.tfr_morlet with parameter average=False, by `Jean-Rémi King`_ and `Alex Gramfort`_
Add argument mask_type to mne.read_events and mne.find_events to support MNE-C style of trigger masking by `Teon Brooks`_ and `Eric Larson`_
Extended Infomax is now the new default in mne.preprocessing.infomax (extended=True), by `Clemens Brunner`_
mne.io.read_raw_eeglab and mne.read_epochs_eeglab now take additional argument uint16_codec that allows to define the encoding of character arrays in set file. This helps in rare cases when reading a set file fails with TypeError: buffer is too small for requested array. By `Mikołaj Magnuski`_
Added mne.decoding.TemporalFilter to filter data in scikit-learn pipelines, by `Asish Panda`_
mne.preprocessing.create_ecg_epochs now includes all the channels when picks=None by `Jaakko Leppakangas`_
mne.set_eeg_reference now allows moving from a custom to an average EEG reference by `Marijn van Vliet`_
The committer list for this release is the following (sorted by alphabetical order):
Alexander Rudiuk
Alexandre Barachant
Alexandre Gramfort
Asish Panda
Camilo Lamus
Chris Holdgraf
Christian Brodbeck
Christopher J. Bailey
Christopher Mullins
Clemens Brunner
Denis A. Engemann
Eric Larson
Federico Raimondo
Félix Raimundo
Guillaume Dumas
Jaakko Leppakangas
Jair Montoya
Jean-Rémi King
Johannes Niediek
Jona Sassenhagen
Jussi Nurminen
Keith Doelling
Mainak Jas
Marijn van Vliet
Michael Krause
Mikolaj Magnuski
Nick Foti
Phillip Alday
Simon-Shlomo Poil
Teon Brooks
Yaroslav Halchenko
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Deprecate Epochs.drop_picks in favor of a new method called drop_channels
Add Python3 support by `Nick Ward`_, `Alex Gramfort`_, `Denis Engemann`_, and `Eric Larson`_
Add get_peak method for evoked and stc objects by `Denis Engemann`_
Add iter_topography function for radically simplified custom sensor topography plotting by `Denis Engemann`_
Add field line interpolation by `Eric Larson`_
Add full provenance tacking for epochs and improve drop_log by `Tal Linzen`_, `Alex Gramfort`_ and `Denis Engemann`_
Add systematic contains method to Raw, Epochs and Evoked for channel type membership testing by `Denis Engemann`_
Add fiff unicode writing and reading support by `Denis Engemann`_
Add 3D MEG/EEG field plotting function and evoked method by `Denis Engemann`_ and `Alex Gramfort`_
Add consistent channel-dropping methods to Raw, Epochs and Evoked by `Denis Engemann`_ and `Alex Gramfort`_
Add equalize_channnels function to set common channels for a list of Raw, Epochs, or Evoked objects by `Denis Engemann`_
Add plot_events function to visually display paradigm by `Alex Gramfort`_
Improved connectivity circle plot by `Martin Luessi`_
Add ability to anonymize measurement info by `Eric Larson`_
Add callback to connectivity circle plot to isolate connections to clicked nodes `Roan LaPlante`_
Add ability to add patch information to source spaces by `Eric Larson`_
Add split_label function to divide labels into multiple parts by `Christian Brodbeck`_
Add color attribute to Label objects by `Christian Brodbeck`_
Add max mode for extract_label_time_course by `Mads Jensen`_
Add rename_channels function to change channel names and types in info object by `Dan Wakeman`_ and `Denis Engemann`_
Add compute_ems function to extract the time course of experimental effects by `Denis Engemann`_, `Sébastien Marti`_ and `Alex Gramfort`_
Add option to expand Labels defined in a source space to the original surface (Label.fill()) by `Christian Brodbeck`_
GUIs can be invoked form the command line using $ mne coreg and $ mne kit2fiff by `Christian Brodbeck`_
Add add_channels_epochs function to combine different recordings at the Epochs level by `Christian Brodbeck`_ and `Denis Engemann`_
Add support for EGI Netstation simple binary files by `Denis Engemann`_
Add support for treating arbitrary data (numpy ndarray) as a Raw instance by `Eric Larson`_
Support for parsing the EDF+ annotation channel by `Martin Billinger`_
Add EpochsArray constructor for creating epochs from numpy arrays by `Denis Engemann`_ and `Federico Raimondo`_
Add connector to FieldTrip realtime client by `Mainak Jas`_
Add color and event_id with legend options in plot_events in viz.py by `Cathy Nangini`_
Add events_list parameter to mne.concatenate_raws to concatenate events corresponding to runs by `Denis Engemann`_
Add read_ch_connectivity function to read FieldTrip neighbor template .mat files and obtain sensor adjacency matrices by `Denis Engemann`_
Add display of head in helmet from -trans.fif file to check coregistration quality by `Mainak Jas`_
Add raw.add_events to allow adding events to a raw file by `Eric Larson`_
Add plot_image method to Evoked object to display data as images by `Jean-Rémi King`_ and `Alex Gramfort`_ and `Denis Engemann`_
Add BCI demo with CSP on motor imagery by `Martin Billinger`_
New ICA API with unified methods for processing Raw, Epochs and Evoked objects by `Denis Engemann`_
Apply ICA at the evoked stage by `Denis Engemann`_
New ICA methods for visualizing unmixing quality, artifact detection and rejection by `Denis Engemann`_
Add pick_channels and drop_channels mixin class to pick and drop channels from Raw, Epochs, and Evoked objects by `Andrew Dykstra`_ and `Denis Engemann`_
Add EvokedArray class to create an Evoked object from an array by `Andrew Dykstra`_
Add plot_bem method to visualize BEM contours on MRI anatomical images by `Mainak Jas`_ and `Alex Gramfort`_
Add automated ECG detection using cross-trial phase statistics by `Denis Engemann`_ and `Juergen Dammers`_
Add Forward class to succinctly display gain matrix info by `Andrew Dykstra`_
Add reading and writing of split raw files by `Martin Luessi`_
Add OLS regression function by `Tal Linzen`_, `Teon Brooks`_ and `Denis Engemann`_
Add computation of point spread and cross-talk functions for MNE type solutions by `Alex Gramfort`_ and `Olaf Hauk`_
Add mask parameter to plot_evoked_topomap and evoked.plot_topomap by `Denis Engemann`_ and `Alex Gramfort`_
Add infomax and extended infomax ICA by `Denis Engemann`_, `Juergen Dammers`_ and `Lukas Breuer`_ and `Federico Raimondo`_
Aesthetically redesign interpolated topography plots by `Denis Engemann`_ and `Alex Gramfort`_
Simplify sensor space time-frequency analysis API with tfr_morlet function by `Alex Gramfort`_ and `Denis Engemann`_
Add new somatosensory MEG dataset with nice time-frequency content by `Alex Gramfort`_
Add HDF5 write/read support for SourceEstimates by `Eric Larson`_
Add InverseOperator class to display inverse operator info by `Mainak Jas`_
Add $ mne report command to generate html reports of MEG/EEG data analysis pipelines by `Mainak Jas`_, `Alex Gramfort`_ and `Denis Engemann`_
Improve ICA verbosity with regard to rank reduction by `Denis Engemann`_
Fix incorrect times attribute when stc was computed using apply_inverse after decimation at epochs stage for certain, arbitrary sample frequencies by `Denis Engemann`_
Fix corner case error for step-down-in-jumps permutation test (when step-down threshold was high enough to include all clusters) by `Eric Larson`_
Fix selection of total number of components via float when picking ICA sources by `Denis Engemann`_ and `Qunxi Dong`_
Fix writing and reading transforms after modification in measurement info by `Denis Engemann`_ and `Martin Luessi`_ and `Eric Larson`_
Fix pre-whitening / rescaling when estimating ICA on multiple channels without covariance by `Denis Engemann`_
Fix ICA pre-whitening, avoid recomputation when applying ICA to new data by `Denis Engemann`_
The minimum numpy version has been increased to 1.6 from 1.4.
Epochs object now has a selection attribute to track provenance of selected Epochs. The length of the drop_log attribute is now the same as the length of the original events passed to Epochs. In earlier versions it had the length of the events filtered by event_id. Epochs has also now a plot_drop_log method.
Deprecate Epochs.drop_picks in favor of a new method called drop_channels
Deprecate labels_from_parc and parc_from_labels in favor of read_labels_from_annot and write_labels_to_annot
The default of the new add_dist option of setup_source_space to add patch information will change from False to True in MNE-Python 0.9
Deprecate read_evoked and write_evoked in favor of read_evokeds and write_evokeds. read_evokeds will return all Evoked instances in a file by default.
Deprecate setno in favor of condition in the initialization of an Evoked instance. This affects mne.fiff.Evoked and read_evokeds, but not read_evoked.
Deprecate mne.fiff module, use mne.io instead e.g. mne.io.Raw instead of mne.fiff.Raw.
Pick functions (e.g., pick_types) are now in the mne namespace (e.g. use mne.pick_types).
Deprecated ICA methods specific to one container type. Use ICA.fit, ICA.get_sources ICA.apply and ICA.plot_* for processing Raw, Epochs and Evoked objects.
The default smoothing method for mne.stc_to_label will change in v0.9, and the old method is deprecated.
As default, for ICA the maximum number of PCA components equals the number of channels passed. The number of PCA components used to reconstruct the sensor space signals now defaults to the maximum number of PCA components estimated.
The committer list for this release is the following (preceded by number of commits):
418 Denis A. Engemann
284 Alexandre Gramfort
242 Eric Larson
155 Christian Brodbeck
144 Mainak Jas
49 Martin Billinger
49 Andrew Dykstra
44 Tal Linzen
37 Dan G. Wakeman
36 Martin Luessi
26 Teon Brooks
20 Cathy Nangini
15 Hari Bharadwaj
15 Roman Goj
10 Ross Maddox
9 Marmaduke Woodman
8 Praveen Sripad
8 Tanay
8 Roan LaPlante
5 Saket Choudhary
4 Nick Ward
4 Mads Jensen
3 Olaf Hauk
3 Brad Buran
2 Daniel Strohmeier
2 Federico Raimondo
2 Alan Leggitt
1 Jean-Rémi King
1 Matti Hämäläinen
Nothing published for this version
Removed deprecated read/write_stc/w, use SourceEstimate methods instead
Add capability for real-time feedback via trigger codes using StimServer and StimClient classes by `Mainak Jas`_
New decoding module for MEG analysis containing sklearn compatible transformers by `Mainak Jas`_ and `Alex Gramfort`_
New realtime module containing RtEpochs, RtClient and MockRtClient class by `Martin Luessi`_, `Christopher Dinh`_, `Alex Gramfort`_, `Denis Engemann`_ and `Mainak Jas`_
Allow picking normal orientation in LCMV beamformers by `Roman Goj`_, `Alex Gramfort`_, `Denis Engemann`_ and `Martin Luessi`_
Add printing summary to terminal for measurement info by `Denis Engemann`_
Add read and write info attribute ICA objects by `Denis Engemann`_
Decoding with Common Spatial Patterns (CSP) by `Romain Trachel`_ and `Alex Gramfort`_
Add ICA plot_topomap function and method for displaying the spatial sensitivity of ICA sources by `Denis Engemann`_
Plotting multiple brain views at once by `Eric Larson`_
Reading head positions from raw FIFF files by `Eric Larson`_
Add decimation parameter to ICA.decompose* methods by `Denis Engemann`_ and `Alex Gramfort`_
Add rejection buffer to ICA.decompose* methods by `Denis Engemann`_ and `Alex Gramfort`_
Improve ICA computation speed and memory usage by `Denis Engemann`_ and `Alex Gramfort`_
Add polygonal surface decimation function to preprocess head surfaces for coregistration by `Denis Engemann`_ and `Alex Gramfort`_
DICS time-frequency beamforming for epochs, evoked and for estimating source power by `Roman Goj`_, `Alex Gramfort`_ and `Denis Engemann`_
Add method for computing cross-spectral density (CSD) from epochs and class for storing CSD data by `Roman Goj`_, `Alex Gramfort`_ and `Denis Engemann`_
Add trellis plot function and method for visualizing single epochs by `Denis Engemann`_
Add fiducials read/write support by `Christian Brodbeck`_ and `Alex Gramfort`_
Add select / drop bad channels in plot_raw on click by `Denis Engemann`_
Add ico and oct source space creation in native Python by `Eric Larson`_
Add interactive rejection of bad trials in plot_epochs by `Denis Engemann`_
Add morph map calculation by `Eric Larson`_ and `Martin Luessi`_
Add volume and discrete source space creation and I/O support by `Eric Larson`_
Time-frequency beamforming to obtain spectrograms in source space using LCMV and DICS by `Roman Goj`_, `Alex Gramfort`_ and `Denis Engemann`_
Compute epochs power spectral density function by `Denis Engemann`_
Plot raw power spectral density by `Eric Larson`_
Computing of distances along the cortical surface by `Eric Larson`_
Add reading BEM solutions by `Eric Larson`_
Add forward solution calculation in native Python by `Eric Larson`_
Add (Neuro)debian license compatibility by `Eric Larson`_
Automatic QRS threshold selection for ECG events by `Eric Larson`_
Add Travis continuous integration service by `Denis Engemann`_
Add SPM face data set by `Denis Engemann`_ `Martin Luessi`_ and `Alex Gramfort`_
Support reading of EDF+,BDF data by `Teon Brooks`_
Tools for scaling MRIs (mne.scale_mri) by `Christian Brodbeck`_
GUI for head-MRI coregistration (mne.gui.coregistration) by `Christian Brodbeck`_
GUI for ki2fiff conversion (mne.gui.kit2fiff) by `Christian Brodbeck`_
Support reading of EEG BrainVision data by `Teon Brooks`_
Improve CTF compensation handling by `Martin Luessi`_ and `Eric Larson`_
Improve and extend automated layout guessing by `Denis Engemann`_
Add Continuum Analytics Anaconda support by `Denis Engemann`_
Add subtract evoked option to beamformers by `Andrew Dykstra`_
Add new transform method to SourceEstimate(s) by `Andrew Dykstra`_
The pick_normal parameter for minimum norm solvers has been renamed as pick_ori and normal orientation picking is now achieved by passing the value "normal" for the pick_ori parameter.
ICA objects now expose the measurement info of the object fitted.
Average EEG reference is now added by default to Raw instances.
Removed deprecated read/write_stc/w, use SourceEstimate methods instead
The chs argument in mne.layouts.find_layout is deprecated and will be removed in MNE-Python 0.9. Use info instead.
plot_evoked and Epochs.plot now open a new figure by default. To plot on an existing figure please specify the axes parameter.
The committer list for this release is the following (preceded by number of commits):
336 Denis A. Engemann
202 Eric Larson
193 Roman Goj
138 Alexandre Gramfort
99 Mainak Jas
75 Christian Brodbeck
60 Martin Luessi
40 Teon Brooks
29 Romain Trachel
28 Andrew Dykstra
12 Mark Wronkiewicz
10 Christoph Dinh
8 Alan Leggitt
3 Yaroslav Halchenko
3 Daniel Strohmeier
2 Mads Jensen
2 Praveen Sripad
1 Luke Bloy
1 Emanuele Olivetti
1 Yousra BEKHTI
Deprecated use of fiff.pick_types without specifying exclude -- use either [] (none), bads (bad channels), or a list of string (channel names).
Linear (and zeroth-order) detrending for Epochs and Evoked by `Eric Larson`_
Label morphing between subjects by `Eric Larson`_
Define events based on time lag between reference and target event by `Denis Engemann`_
ICA convenience function implementing an automated artifact removal workflow by `Denis Engemann`_
Bad channels no longer included in epochs by default by `Eric Larson`_
Support for diagonal noise covariances in inverse methods and rank computation by `Eric Larson`_
Support for using CUDA in FFT-based FIR filtering (method='fft') and resampling by `Eric Larson`_
Optimized FFT length selection for faster overlap-add filtering by `Martin Luessi`_
Ability to exclude bad channels from evoked plots or shown them in red by `Martin Luessi`_
Option to show both hemispheres when plotting SourceEstimate with PySurfer by `Martin Luessi`_
Optimized Raw reading and epoching routines to limit memory copies by `Eric Larson`_
Advanced options to save raw files in short or double precision by `Eric Larson`_
Option to detect decreasing events using find_events by `Simon Kornblith`_
Option to change default stim_channel used for finding events by `Eric Larson`_
Use average patch normal from surface-oriented forward solution in inverse calculation when possible by `Eric Larson`_
Function to plot drop_log from Epochs instance by `Eric Larson`_
Estimate rank of Raw data by `Eric Larson`_
Support reading of BTi/4D data by `Denis Engemann`_
Wrapper for generating forward solutions by `Eric Larson`_
Averaging forward solutions by `Eric Larson`_
Events now contain the pre-event stim channel value in the middle column, by `Christian Brodbeck`_
New function mne.find_stim_steps for finding all steps in a stim channel by `Christian Brodbeck`_
Get information about FIFF files using mne.fiff.show_fiff() by `Eric Larson`_
Compute forward fields sensitivity maps by `Alex Gramfort`_ and `Eric Larson`_
Support reading of KIT data by `Teon Brooks`_ and `Christian Brodbeck`_
Raw data visualization by `Eric Larson`_
Smarter SourceEstimate object that contains linear inverse kernel and sensor space data for fast time-frequency transforms in source space by `Martin Luessi`_
Add example of decoding/MVPA on MEG sensor data by `Alex Gramfort`_
Add support for non-paired tests in spatiotemporal cluster stats by `Alex Gramfort`_
Add unified SSP-projector API for Raw, Epochs and Evoked objects by `Denis Engemann`_, `Alex Gramfort`_ `Eric Larson`_ and `Martin Luessi`_
Add support for delayed SSP application at evoked stage `Denis Engemann`_, `Alex Gramfort`_, `Eric Larson`_ and `Martin Luessi`_
Support selective parameter updating in functions taking dicts as arguments by `Denis Engemann`_
New ICA method sources_as_epochs to create Epochs in ICA space by `Denis Engemann`_
New method in Evoked and Epoch classes to shift time scale by `Mainak Jas`_
Added option to specify EOG channel(s) when computing PCA/SSP projections for EOG artifacts by `Mainak Jas`_
Improved connectivity interface to allow combinations of signals, e.g., seed time series and source estimates, by `Martin Luessi`_
Effective connectivity estimation using Phase Slope Index (PSI) by `Martin Luessi`_
Support for threshold-free cluster enhancement (TFCE) by `Eric Larson`_
Support for "hat" variance regularization by `Eric Larson`_
Access source estimates as Pandas DataFrame by `Denis Engemann`_.
Add example of decoding/MVPA on MEG source space data by `Denis Engemann`_
Add support for --tstart option in mne_compute_proj_eog.py by `Alex Gramfort`_
Add two-way repeated measures ANOVA for mass-univariate statistics by `Denis Engemann`_, `Eric Larson`_ and `Alex Gramfort`_
Add function for summarizing clusters from spatio-temporal-cluster permutation tests by `Denis Engemann`_ and `Eric Larson`_
Add generator support for lcmv_epochs by `Denis Engemann`_
Gamma-MAP sparse source localization method by `Martin Luessi`_ and `Alex Gramfort`_
Add regular expression and substring support for selecting parcellation labels by `Denis Engemann`_
New plot_evoked option for interactive and reversible selection of SSP projection vectors by `Denis Engemann`_
Plot 2D flat topographies with interpolation for evoked and SSPs by `Christian Brodbeck`_ and `Alex Gramfort`_
Support delayed SSP applicationon for 2D flat topographies by `Denis Engemann`_ and `Christian Brodbeck`_ and `Alex Gramfort`_
Allow picking maximum power source, a.k.a. "optimal", orientation in LCMV beamformers by `Roman Goj`_, `Alex Gramfort`_, `Denis Engemann`_ and `Martin Luessi`_
Add sensor type scaling parameter to plot_topo by `Andrew Dykstra`_, `Denis Engemann`_ and `Eric Larson`_
Support delayed SSP application in plot_topo by `Denis Engemann`_
Deprecated use of fiff.pick_types without specifying exclude -- use either [] (none), bads (bad channels), or a list of string (channel names).
Depth bias correction in dSPM/MNE/sLORETA make_inverse_operator is now done like in the C code using only gradiometers if present, else magnetometers, and EEG if no MEG channels are present.
Fixed-orientation inverse solutions need to be made using fixed=True option (using non-surface-oriented forward solutions if no depth weighting is used) to maintain compatibility with MNE C code.
Raw.save() will only overwrite the destination file, if it exists, if option overwrite=True is set.
mne.utils.set_config(), get_config(), get_config_path() moved to mne namespace.
Raw constructor argument proj_active deprecated -- use proj argument instead.
Functions from the mne.mixed_norm module have been moved to the mne.inverse_sparse module.
Deprecate CTF compensation (keep_comp and dest_comp) in Epochs and move it to Raw with a single compensation parameter.
Remove artifacts module. Artifacts- and preprocessing related functions can now be found in mne.preprocessing.
The committer list for this release is the following (preceded by number of commits):
340 Eric Larson
330 Denis A. Engemann
204 Alexandre Gramfort
72 Christian Brodbeck
66 Roman Goj
65 Martin Luessi
37 Teon Brooks
18 Mainak Jas
9 Simon Kornblith
7 Daniel Strohmeier
6 Romain Trachel
5 Yousra BEKHTI
5 Brad Buran
1 Andrew Dykstra
1 Christoph Dinh
Use raw.time_as_index instead of time_to_index (still works but is deprecated).
Multi-taper PSD estimation for single epochs in source space using minimum norm by `Martin Luessi`_
Read and visualize .dip files obtained with xfit or mne_dipole_fit by `Alex Gramfort`_
Make EEG layout by `Eric Larson`_
Ability to specify SSP projectors when computing covariance from raw by `Eric Larson`_
Read and write txt based event files (.eve or .txt) by `Eric Larson`_
Pass qrs threshold to preprocessing functions by `Eric Larson`_
Compute SSP projections from continuous raw data by `Eric Larson`_
Support for applied SSP projections when loading Raw by `Eric Larson`_ and `Alex Gramfort`_
Support for loading Raw stored in different fif files by `Eric Larson`_
IO of many Evoked in a single fif file + compute Epochs.standard_error by `Eric Larson`_ and `Alex Gramfort`_
ICA computation on Raw and Epochs with automatic component selection by `Denis Engemann`_ and `Alex Gramfort`_
Saving ICA sources to fif files and creating ICA topography layouts by `Denis Engemann`_
Save and restore ICA session to and from fif by `Denis Engemann`_
Export raw, epochs and evoked data as data frame to the pandas library by `Denis Engemann`_
Export raw, epochs and evoked data to the nitime library by `Denis Engemann`_
Copy methods for raw and epochs objects by `Denis Engemann`_, `Martin Luessi`_ and `Alex Gramfort`_
New raw objects method to get the time at certain indices by `Denis Engemann`_ and `Alex Gramfort`_
Plot method for evoked objects by `Denis Engemann`_
Enhancement of cluster-level stats (speed and memory efficiency) by `Eric Larson`_ and `Martin Luessi`_
Reading of source space distances by `Eric Larson`_
Support for filling / smoothing labels and speedup of morphing by `Eric Larson`_
Adding options for morphing by `Eric Larson`_
Plotting functions for time frequency and epochs image topographies by `Denis Engemann`_ and `Alex Gramfort`_
Plotting ERP/ERF images by `Alex Gramfort`_
See detailed subplot when cliking on a channel inside a topography plot by `Martin Luessi`_, `Eric Larson`_ and `Denis Engemann`_
Misc channel type support plotting functions by `Denis Engemann`_
Improved logging support by `Eric Larson`_
Whitening of evoked data for plotting and quality checking by `Alex Gramfort`_
Transparent I/O of gzipped fif files (as .fif.gz) by `Eric Larson`_
Spectral connectivity estimation in sensor and source space by `Martin Luessi`_
Read and write Epochs in FIF files by `Alex Gramfort`_
Resampling of Raw, Epochs, and Evoked by `Eric Larson`_
Creating epochs objects for different conditions and accessing conditions via user-defined name by `Denis Engemann`_ , `Eric Larson`_, `Alex Gramfort`_ and `Christian Brodbeck`_
Visualizing evoked responses from different conditions in one topography plot by `Denis Engemann`_ and `Alex Gramfort`_
Support for L21 MxNE solver using coordinate descent using scikit-learn by `Alex Gramfort`_ and `Daniel Strohmeier`_
Support IIR filters (butterworth, chebyshev, bessel, etc.) by `Eric Larson`_
Read labels from FreeSurfer parcellation by `Martin Luessi`_
Combining labels in source space by `Christian Brodbeck`_
Read and write source spaces, surfaces and coordinate transforms to and from files by `Christian Brodbeck`_
Downsample epochs by `Christian Brodbeck`_ and `Eric Larson`_
New labels class for handling source estimates by `Christian Brodbeck`_, `Martin Luessi`_ and `Alex Gramfort`_
New plotting routines to easily display SourceEstimates using PySurfer by `Alex Gramfort`_
Function to extract label time courses from SourceEstimate(s) by `Martin Luessi`_
Function to visualize connectivity as circular graph by `Martin Luessi`_ and `Alex Gramfort`_
Time-frequency Mixed Norm Estimates (TF-MxNE) by `Alex Gramfort`_ and `Daniel Strohmeier`_
Added nave parameter to source_induced_power() and source_band_induced_power(), use nave=1 by default (wrong nave was used before).
Use mne.layout.read_layout instead of mne.layout.Layout to read a layout file (.lout)
Use raw.time_as_index instead of time_to_index (still works but is deprecated).
The artifacts module (mne.artifacts) is now merged into mne.preprocessing
Epochs objects now also take dicts as values for the event_id argument. They now can represent multiple conditions.
The committer list for this release is the following (preceded by number of commits):
313 Eric Larson
226 Alexandre Gramfort
219 Denis A. Engemann
104 Christian Brodbeck
85 Martin Luessi
6 Daniel Strohmeier
4 Teon Brooks
1 Dan G. Wakeman
Add function to compute source PSD using minimum norm by Alex Gramfort_
Add function to compute source PSD using minimum norm by `Alex Gramfort`_
L21 Mixed Norm Estimates (MxNE) by `Alex Gramfort`_ and `Daniel Strohmeier`_
Generation of simulated evoked responses by `Alex Gramfort`_, `Daniel Strohmeier`_, and `Martin Luessi`_
Fit AR models to raw data for temporal whitening by `Alex Gramfort`_.
speedup + reduce memory of mne.morph_data by `Alex Gramfort`_.
Backporting scipy.signal.firwin2 so filtering works with old scipy by `Alex Gramfort`_.
LCMV Beamformer for evoked data, single trials, and raw data by `Alex Gramfort`_ and `Martin Luessi`_.
Add support for reading named channel selections by `Martin Luessi`_.
Add Raw.filter method to more easily band pass data by `Alex Gramfort`_.
Add tmin + tmax parameters in mne.compute_covariance to estimate noise covariance in epochs baseline without creating new epochs by `Alex Gramfort`_.
Add support for sLORETA in apply_inverse, apply_inverse_raw, apply_inverse_epochs (API Change) by `Alex Gramfort`_.
Add method to regularize a noise covariance by `Alex Gramfort`_.
Read and write measurement info in forward and inverse operators for interactive visualization in mne_analyze by `Alex Gramfort`_.
New mne_compute_proj_ecg.py and mne_compute_proj_eog.py scripts to estimate ECG/EOG PCA/SSP vectors by `Alex Gramfort`_ and `Martin Luessi`_.
Wrapper function and script (mne_maxfilter.py) for Elekta Neuromag MaxFilter(TM) by `Martin Luessi`_
Add method to eliminate stimulation artifacts from raw data by linear interpolation or windowing by `Daniel Strohmeier`_.
The committer list for this release is the following (preceded by number of commits):
118 Alexandre Gramfort
81 Martin Luessi
15 Daniel Strohmeier
4 Christian Brodbeck
4 Louis Thibault
2 Brad Buran
Sign flip computation for robust label average of signed values by Alex Gramfort_.
Sign flip computation for robust label average of signed values by `Alex Gramfort`_.
Reading and writing of .w files by `Martin Luessi`_.
Support for modifying Raw object and allow raw data preloading with memory mapping by `Martin Luessi`_ and `Alex Gramfort`_.
Support of arithmetic of Evoked data (useful to concatenate between runs and compute contrasts) by `Alex Gramfort`_.
Support for computing sensor space data from a source estimate using an MNE forward solution by `Martin Luessi`_.
Support of arithmetic of Covariance by `Alex Gramfort`_.
Write BEM surfaces in Python by `Alex Gramfort`_.
Filtering operations and apply_function interface for Raw object by `Martin Luessi`_.
Support for complex valued raw fiff files and computation of analytic signal for Raw object by `Martin Luessi`_.
Write inverse operators (surface and volume) by `Alex Gramfort`_.
Covariance matrix computation with multiple event types by `Martin Luessi`_.
New tutorial in the documentation and new classes and functions reference page by `Alex Gramfort`_.
The committer list for this release is the following (preceded by number of commits):
80 Alexandre Gramfort
51 Martin Luessi
New stats functions for FDR correction and Bonferroni by Alex Gramfort_.
New stats functions for FDR correction and Bonferroni by `Alex Gramfort`_.
Faster time-frequency using downsampling trick by `Alex Gramfort`_.
Support for volume source spaces by `Alex Gramfort`_ (requires next MNE release or nightly).
Improved Epochs handling by `Martin Luessi`_ (slicing, drop_bad_epochs).
Bug fix in Epochs + ECG detection by Manfred Kitzbichler.
New pick_types_evoked function by `Alex Gramfort`_.
SourceEstimate now supports algebra by `Alex Gramfort`_.
Here are the code migration instructions when upgrading from mne-python version 0.1:
New return values for the function find_ecg_events
The committer list for this release is the following (preceded by number of commits):
33 Alexandre Gramfort
12 Martin Luessi
2 Yaroslav Halchenko
1 Manfred Kitzbichler
Initial release (initial commit: 2010-12-26).
Initial release (initial commit: 2010-12-26).
The committer list for this release is the following (preceded by number of commits):
315 Alexandre Gramfort
1 Ellen Lau
41 Emily Ruzich
2 Martin Luessi
9 Matti Hämäläinen
Your coding agent can read these notes before it upgrades. Set up the MCP server →