Importing various file formats into Neuropype

Neuropype can import a wide range of recorded formats. The ImportFile node is a catchall node that will work with most supported file formats, based on the filename extension (by handing off work to the node for that format). However, if your file has a non-standard extension, or requires some special non-default settings, look for an ImportX node, where X is the desired file format. Certain file formats have settings that are unique to them, and therefore only exposed in the import node for that file format and not in the general ImportFile node. Notes on some file formats below (this page will continue to be updated). If you come across a signal file format that isn't supported in Neuropype or a variant that isn't supported by the node's settings, please report it to us. Thanks.

Most file formats can only store a time series of a given type or modality (i.e., EEG, NIRS, etc.). On import, the stream in the Neuropype packet will be automatically named by the modality of the time series based on the file format, i.e. ('eeg', 'nirs', 'gaze', etc.). If the file contains event markers, these will be saved in a stream called 'markers'.

Some file formats, such as XDF allow multiple time series streams to be saved in a single file. See below for notes on ImportXDF.

ImportSET

For importing files created with EEGLAB. Not all SET variants that can be created with EEGLAB are (presently) supported, so please use the following preferred settings when exporting to SET in EEGLAB, to ensure you can import your files into Neuropype (the option circled in red should not be checked).

eeglab-options-preferred.png

ImportXDF

XDF allows you to store time series from the same or different modalities, in the same file. It can also store multiple event marker streams. This makes it an excellent choice for working with multi-modal data and therefore a preferred format for working with Neuropype. It also allows these data streams to be given names of your choosing (i.e., a descriptive name). These names must be lowercase and without spaces. The ImportXDF node contains a use_streamnames property, by default set to True (this default was changed from False to True in the 2022 release), which names the streams in the Neuropype packet with the same name as the corresponding time series streams in XDF. If set to False, then the streams will be named based on their modality, just like other file formats. If there are multiple non-empty streams of the same type (modality) in the same XDF file, those streams will receive a -n suffix, where n is an ascending integer starting with 1. So the first EEG stream will be named eeg-1, the second eeg-2, and so on. The same applies to multiple marker streams (markers-1, markers-2).

However, we do not recommend relying on this naming for handling streams in Neuropype, but instead using the original stream names in the XDF file or using the RenameStreams node to give them descriptive names after import.