[Eeglablist] Spectrum with good frequency resolution for short time windows?

Tim Mullen mullen.tim at gmail.com
Fri Mar 2 16:11:24 PST 2012


Christian,

You might try multi-taper FFTs, which has superior bias-variance
tradeoffs than a single-tapered FFT or wavelets for small-sample data.
I believe newtimef() contains suitable options for multi-taper
spectral estimation, so no need to fuss with external functions.
Otherwise, check out Chronux (www.chronux.org) function mtspecgramc()
and related mt* functions (which also compute analytic/jackknife
confidence intervals, etc).

AR modeling can also be a good choice when faced with a small-sample
situation, if the spectrum has not too many degrees of freedom (few
spectral peaks) and you can deduce the correct model order (in fact,
an appropriately fit AR model is an optimal (maximum entropy) choice
for a spectral estimator IF you know the correct model order -- which
of course you don't, a priori, with EEG). Sometimes/often
multi-tapering can be a better choice than (unregularized) AR models.

FYI: while there are many choices of excellent functions for AR
spectral estimation (including Matlab's own routines), the SIFT plugin
for EEGLAB (sccn.ucsd.edu/wiki/SIFT) also contains routines for
maximum-entropy (e.g. vieira-morf) VAR model fitting using a sliding
window (pop_est_fitMVAR() ; single trial, or across multiple trials
for reduced variance) or adaptive estimation via Kalman filtering
(est_fitMVARKalman() ;  no sliding window, you get a spectral estimate
for each sample point). Once model is fit, just select the spectral
density as one of the desired measures in pop_est_mvarConnectivity().
The auto-spectra and cross-spectra (optionally converted to dB) will
be stored, respectively, on the main diagonal and off-diagonals of
EEG.CAT.Conn.S  (this is of dimension [channel x channel x time x
frequency]) and the corresponding times and frequencies (to insert
into study structure) are stored in EEG.CAT.Conn.erWinCenterTimes and
EEG.CAT.Conn.freqs

In general, if you want to incorporate your ERSP results computed
externally into a study design, I suppose you would want to insert
these into the appropriate sub-fields of   STUDY.cluster   (e.g.
'erspdata', 'ersptimes', etc). See also
http://sccn.ucsd.edu/wiki/Chapter_07:_EEGLAB_Study_Data_Structures.

Tim


On Fri, Mar 2, 2012 at 1:32 AM, Christian Scharinger
<c.scharinger at gmx.net> wrote:
> Hi there,
>
> I want to calculate a spectrum  for a rather short time window (500 ms
> or less). But nevertheless I want to have a good frequency resolution
> (0.5 Hz or better).
>
> My first idea was to concatenate several of this short time windows and
> then run a FFT over the resulting larger time window. But I guess this
> approach could be problematic?
>
> My second idea was to use an AR-model instead of FFT to calculate the
> spectral power. This works quite well. But the problem here is how to
> (re-)integrate this AR-spectrum that I calculated "outside" eeglab later
> in an eeglab study design.
> Is there any possibility to replace the spectra that are calculated in
> eeglab with AR-spectra?
>
> Maybe someone has any suggestions or ideas for this problem or maybe a
> completely different (better) solution?
>
> Many thanks in advance,
>
> Christian
>
> --
> Christian Scharinger, M.A.
>
> Knowledge Media Research Center (KMRC)
> Tuebingen
>
>
> _______________________________________________
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to eeglablist-unsubscribe at sccn.ucsd.edu
> For digest mode, send an email with the subject "set digest mime" to eeglablist-request at sccn.ucsd.edu



-- 
---------  αντίληψη -----------




More information about the eeglablist mailing list