Troubleshooting and Frequently Asked Questions - ucdavis/erplab GitHub Wiki

Questions

Installation Section

General Questions

Speed

Problems with Epoched Data

Installation

I’ve just installed the latest release of ERPLAB, and only some of the functions work. Other functions do not seem to work at all. What is going on?

The Matlab path may not include the new ERPLAB functions. You must update the Matlab path by selecting Set Path from the main Matlab window. Delete any old EEGLAB and ERPLAB folders from the path, and re-adding the EEGLAB folder (and all subfolders) to the path by clicking on Add with subfolders and selecting the path to the EEGLAB folder (which contains the ERPLAB folders). If you still have problems, you may want to clear all of the path information by clicking Default prior to clicking Add with subfolders.

Another possibility is that you don't have the Matlab Signal Processing Toolbox installed. This must be installed for ERPLAB to work properly. You can probably purchase this toolbox through your university's IT department (or you can buy it directly from the The Mathworks).

I have installed EEGLAB successfully, but ERPLAB Classic does not show up in the EEGLAB window. What is going on?

You may have put the ERPLAB folder in the wrong location. The folder you downloaded should go inside the EEGLAB Plugins folder. Your path should be something like this: Applications > MATLAB> eeglab2008October01_beta >plugins>erplab_2.0.0.1. This folder should contain the ERPLAB files and folders.

A common error is to make an ERPLAB folder inside the plugins folder, and then place the downloaded folder inside this new folder, leading to a path like this: Applications > MATLAB> eeglab2008October01_beta >plugins>erplab_2.0.0.1>erplab_2.0.0.1.

Also, we recommend that you do not install EEGLAB inside the Toolbox folder of the Matlab application. Instead, we recommend that you install it somewhere inside your Documents folder (e.g., inside the Matlab folder within your Documents folder).

I’ve just installed the latest release of EEGLAB, and I get warning messages anytime I try to do anything in EEGLAB or ERPLAB. What is going on?

The Matlab path may include a set of routines that are used to take the place of the Matlab Signal Processing Toolbox. To avoid this problem, update the Matlab path by selecting Set Path from the main Matlab window. Delete any paths with external/fieldtrip in them and save.

General Questions

The example datasets don't download successfully.

The data are hosted on Box.com, which may be blocked from your countries. Try using a VPN to connect to the Internet.

Things that worked before aren't working now. Or most things work, but a few things generate error messages. How can I fix this?

The first thing to try is quitting and restarting Matlab. That often solves weird problems, especially when things that formerly worked have stopped working.

If that doesn't work, it is possible that ERPLAB's "working memory" has become corrupted. This is the memory that stores all the parameters that you've specified in your various windows. In ERPLAB Studio, you can reset the working memory by going to the Settings menu in the top left corner of the ERPLAB Studio GUI, and then selecting Memory Settings > Reset Working Memory. In ERPLAB Classic, you can reset the working memory by selecting ERPLAB > Settings > Reset ERPLAB's Working Memory.

Another possibility is that the Matlab path has been altered. See the recommendations above for setting the path correctly.

Another possibility is that you've upgraded to a new version of Matlab. New versions sometimes change core functions, leading to problems with ERPLAB. It generally takes us several months to release a new version of ERPLAB after Matlab has been updated.

How do I replace a bad channel with interpolated data?

This is done with with the Interpolate Channels panel in the EEG tab of ERPLAB Studio, or with ERPLAB > Preprocess EEG > Selective Electrode Interpolation in ERPLAB Classic.

I am trying to use a panel or button in ERPLAB Studio but it is grayed out.

In most cases, this means that you don’t have the right number or type of datasets/ERPsets selected in the EEGsets or ERPsets panel. For example, most processing operations are unavailable if you don’t have any EEGsets loaded (in the EEG tab) or an ERPsets loaded (in the ERP tab). In the EEG tab, many operations work only for continuous EEG or only for epoched EEG, so you need to make sure that the appropriate type (Continuous or Epoched) is selected at the top of the EEGsets panel. Some of the tools (e.g., EEGLAB Tools and EEGLAB ICA) require that only a single EEGsets is selected, and they will be grayed out if multiple EEGsets are selected. Some of the tools (e.g., Extract Bin-Based Epochs) will be inactive unless BINLISTER has been run on all selected EEGsets.

How do I make contra and ipsi waveforms (for N2pc, CDA, LRP, etc.)?

This is done with ERP Bin Operations (see the ERP Bin Operations page in the User's Manual).

How can I perform statistical analyses on my ERP data?

For conventional amplitude and latency analyses, you can measure the amplitudes or latencies from the averaged ERP waveforms using the Measurement Tool, export the data as a text file, and then read the data into a statistical analysis program such as R or JASP.

If you would like to use the mass univariate approach, in which the amplitude at each time point is analyzed individually with a correction for multiple comparisons (e.g., the cluster-based permuation method), you can use the Mass Univariate Toolbox. This is a Matlab package that can directly read the ERPsets created by ERPLAB.

Problems with missing events (especially in Brain Products or EGI systems)

ERPLAB does not seem to recognize my event markers. For example, when I run BINLISTER, it can't find any events that match my bin descriptors.

The problem is that text strings are being used for the event markers (e.g., "S4"), and ERPLAB requires numeric values. You can convert each string to a number using the Advanced version of Create EventList. This can also be accomplished from the Matlab command window or a script using EEG = letterkilla(EEG).

Speed

Some operations are very slow. How can I make ERPLAB run faster?

Matlab is very fast for some kinds of operations and very slow for others. BINLISTER, in particular, can be very slow. Sometimes this is because you have many irrelevant event codes in your EventList. You can tell BINLISTER to ignore these events, which may make it work faster.

If everything seems slow (especially loading files), you may have insufficient memory. We recommend at least 8 GB of RAM and preferably 16 or 32 GB. Note, however, that your computer will not be able to take advantage of more than 4 GB of RAM unless you have a 64-bit version of Matlab installed (along with a 64-bit operating system).

ERPLAB Studio sometimes gets slow if it has been running for a long time, and you can make it faster by quitting and restarting it.

Plotting or combining ERPs that are in different ERPsets

I would like to create a single plot that overlays the waveforms from different files (or make a difference wave across ERPsets). How do I do this?

In ERPLAB Studio: This can be accomplished with the Advanced Waveform Viewer (from the Plotting Options popup menu near the bottom of the plotting area in the ERP tab). You can also create a single ERPset that has the bins from multiple different ERPsets with the Append ERPsets panel.

In ERPLAB Classic: It is not possible to directly plot waveforms from different ERPsets in the same plot or combine data across bins that are in different ERPsets. To accomplish this, you can append one ERPset onto the end of another ERPset with ERPLAB > Append ERPsets. This will create a new ERPset that has twice as many bins (all the bins from the first ERPset followed by all the bins from the second ERPset). You can then overlay the bins corresponding to the original first and second ERPsets or perform ERP Bin Operations.

Plotting EEG

I have just imported my data, and I tried looking at it with EEGLAB's plot scrolling data function or ERPLAB Studio's built-in EEG plotting, and I cannot see any (or some) of my channels. What is wrong?

You probably recorded at DC, and many or all of your channels may have a large DC offset that puts them out of the range of values shown in the window. You can solve this by high-pass filtering your data before plotting. Alternatively, you can select the Remove DC option in the Plot Settings panel (ERPLAB Studio) or in the Plot > Channel data (scroll) window, go to 'Display' menu -> 'Remove DC offset' (ERPLAB Classic).

Problems with Epoched Data

I have already epoched my data in EEGLAB. Is it possible to add an EventList to a dataset that was epoched using EEGLAB?

Not usually (see next question for a trick). To use most ERPLAB functions, you must create the EventList in the continuous data and use ERPLAB's "bin epoching" function to epoch your data. ERPLAB creates links between the EventList and the event information in the continuous data, and many ERPLAB functions would "break" if we tried to create an EventList on an epoched dataset. The next answer also provides a trick that works in many cases. If this does not work, you may need to write your own scripts to do this.

I want to use BINLISTER on data that have already been epoched (in EEGLAB or ERPLAB). Is there any way to do this?

There is a trick for this: You can convert an epoched dataset back to a continuous dataset. Boundary events will be placed between the epochs in the continuous dataset. In ERPLAB Studio, this is accomplished by going to the EEG Utilities tab and clicking Convert to Continuous EEG. A detailed example is given in the ERPLAB Studio Tutorial.

In ERPLAB Classic, this is accomplished with ERPLAB > Utilities > Convert, an epoched dataset into a continuous one.