read_annotations(fname, sfreq='auto', uint16_codec=None)¶
Read annotations from a file.
This function reads a .fif, .fif.gz, .vrmk, .edf, .txt, .csv .cnt, .cef, or .set file and makes an
The sampling frequency in the file. This parameter is necessary for *.vmrk and *.cef files as Annotations are expressed in seconds and *.vmrk/*.cef files are in samples. For any other file format,
sfreqis omitted. If set to ‘auto’ then the
sfreqis taken from the respective info file of the same name with according file extension (*.vhdr for brainvision; *.dap for Curry 7; *.cdt.dpa for Curry 8). So data.vrmk looks for sfreq in data.vhdr, data.cef looks in data.dap and data.cdt.cef looks in data.cdt.dpa.
This parameter is only used in EEGLAB (*.set) and omitted otherwise. If your *.set file contains non-ascii characters, sometimes reading it may fail and give rise to error message stating that “buffer is too small”.
uint16_codecallows to specify what codec (for example: ‘latin1’ or ‘utf-8’) should be used when reading character arrays and can therefore help you solve this problem.
The annotations stored in a .csv require the onset columns to be timestamps. If you have onsets as floats (in seconds), you should use the .txt extension.