FAQ: BIOSIG & NaN-toolbox

From: Alois Schlögl <alois.schloegl ***AT***tugraz.at>
Date: Wed, 02 Mar 2005 20:21:18 +0100
Subject: FAQ: BIOSIG & NaN-toolbox
Newsgroups: tu-graz.biosig
Organization: Technische Universitaet Graz
Message-id: <d053iu$cao$1@fstgss00.tu-graz.ac.at>
User-agent: Mozilla Thunderbird 0.9 (Windows/20041103)


This FAQ addresses some important questions with respect to the NaN and BIOSIG-toolbox.


Q1: WHAT IS THE NAN-TOOLBOX?

A1: The NaN-toolbox contains foundamental statistical functions, which resemble the standard statistical functions of Octave and Matlab but with one difference. The NaN-toolbox ignores (and skips) all NaN's in the data. More information on the BIOSIG toolbox can be obtained from here:
  http://bci.tugraz.at/~schloegl/matlab/NaN/
  biosig/../NaN/README.TXT
  http://biosig.sourceforge.net/help/NaN/index.html


Q2: HOW DOES THE NAN-TOOLBOX AFFECT OTHER APPLICATIONS?

A2: As long as there are no NaN's in the data, the results are exactly the same. If your data contains NaN, the functions in the NaN-toolbox ignores them. Standard matlab will propagate NaN's, consequently, the output gives NaN.


Q3: WHY IS THE NAN-TOOLBOX BUNDLED WITH BIOSIG ?

A3: Several important features of the BIOSIG toolbox are based on the features of the NaN-toolbox: - NaN provides an efficient encoding of missing data (no need of extra memory)
- Artifacts and breaks kann be encoded with NaN's.
- Several signal processing methods rely on the NaN-toolbox for correct handling of missing data.
- TRIGG uses NaN to provide a decorrelation between trials.
- SLOAD uses NaN to indicate breaks between concatanated recordings.
- The NAN-TOOLBOX supports BIOSIG in handling of data with missing values.


Q4: WHAT'S THE EXPERIENCE WITH THE NaN-TOOLBOX?

A4: I'm using this toolbox since about 1998; without any severe problem. Many users worldwide are using it also since several years, too. The NaN-toolbox has been bundled with the BIOSIG-toolbox because of its usefulness. Without the NaN-toolbox, You abandon many useful features of BIOSIG. I clearly recommend to use it.


Q5: DOES THE NAN-TOOLBOX SLOW DOWN MATLAB APPLICATIONS?

A5: Many functions in the NaN-toolbox are based on SUMSKIPNAN. There is an M-file and a MEX-file implementation of SUMSKIPNAN. By default, the slower M-file implementation is used. However, you can compile
the MEX-FILE for your platform with the command MEX SUMSKIPNAN.CPP.




Best,
   Alois Schloegl