In [1]:
import numpy as np
import sys
# comment out or adjust as appropriate:
sys.path.insert(0, '/home/ctw/src/ptsa_new/build/lib.linux-x86_64-2.7/')
import ptsa
from ptsa.data.filters.MorletWaveletFilterCpp import MorletWaveletFilterCpp
from ptsa.data.readers import EEGReader #EDFRawReader
from ptsa.data.filters import MonopolarToBipolarMapper
from ptsa.data.readers import JsonIndexReader
from ptsa.data.readers import BaseEventReader
# when running on rhino set rhino_mount to '', otherwise adjust as appropriate:
rhino_mount = '/home/ctw/fusemounts/rhino'
In [2]:
ev = BaseEventReader(filename=rhino_mount+
'/data/eeg/scalp/ltp/ltpFR2/behavioral/events/events_all_LTP093.mat',
use_reref_eeg=True,common_root='data').read()
ev = ev[ev['type'] == 'WORD']
ev = ev[ev['session'] == 1]
channels = np.array(['{:03}'.format(x) for x in range(1,130)])
eeg = EEGReader(events=ev, channels=channels, start_time=0.0, end_time=1.0, buffer_time=2.0).read()
freqs=np.logspace(np.log10(2), np.log10(200), 15)
In [3]:
wf = MorletWaveletFilterCpp(time_series=eeg,
freqs=freqs,
output='power',
frequency_dim_pos=0,
verbose=True,
cpus=1)
%timeit pow_wavelet, phase_wavelet = wf.filter()
In [4]:
wf = MorletWaveletFilterCpp(time_series=eeg,
freqs=freqs,
output='power',
frequency_dim_pos=0,
verbose=True,
cpus=10)
%timeit pow_wavelet, phase_wavelet = wf.filter()
In [5]:
import mne
info = mne.create_info(129, 500)
eparray = np.transpose(np.array(eeg), (1,0,2))
dat_mne = mne.EpochsArray(eparray, info)
In [6]:
%timeit power = mne.time_frequency.tfr_array_morlet(epoch_data=dat_mne, sfreq=500, freqs=freqs, n_cycles=5, output='power', n_jobs=1)
In [7]:
%timeit power = mne.time_frequency.tfr_array_morlet(epoch_data=dat_mne, sfreq=500, freqs=freqs, n_cycles=5, output='power', n_jobs=10)
In [ ]: