[med-svn] [python-mne] 264/353: added Alex's comments

Yaroslav Halchenko debian at onerussian.com
Fri Nov 27 17:25:12 UTC 2015


This is an automated email from the git hooks/post-receive script.

yoh pushed a commit to tag 0.4
in repository python-mne.

commit 6acb9de84922fbeb7f3cc60c0b47232d0f74b2e7
Author: Daniel Strohmeier <daniel.strohmeier at googlemail.com>
Date:   Thu Jul 12 21:50:32 2012 +0200

    added Alex's comments
---
 mne/artifacts/stim.py            | 26 ++++++++++++++------------
 mne/artifacts/tests/test_stim.py |  2 +-
 2 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/mne/artifacts/stim.py b/mne/artifacts/stim.py
index 0bdabcb..9e4c2c5 100644
--- a/mne/artifacts/stim.py
+++ b/mne/artifacts/stim.py
@@ -1,6 +1,8 @@
 import numpy as np
 from scipy import signal, interpolate
 
+from ..fiff import pick_types
+
 
 def eliminate_stim_artifact(raw, events, event_id, tmin=-0.005,
                                 tmax=0.01, mode='linear'):
@@ -34,23 +36,23 @@ def eliminate_stim_artifact(raw, events, event_id, tmin=-0.005,
     event_start = events[events_sel, 0]
     s_start = np.ceil(raw.info['sfreq'] * np.abs(tmin))[0]
     s_end = np.ceil(raw.info['sfreq'] * tmax)[0]
+    picks = pick_types(raw.info, meg=True, eeg=True)
     if mode == 'linear':
         for k in range(len(event_start)):
-            x = np.array([event_start[k] - raw.first_samp - s_start, \
-                            event_start[k] - raw.first_samp + s_end])
-            data = raw._data[:, [event_start[k] - raw.first_samp - s_start, \
-                                event_start[k] - raw.first_samp + s_end]]
-            f = interpolate.interp1d(x, data)
-            xnew = np.arange(event_start[k] - raw.first_samp - s_start, \
-                             event_start[k] - raw.first_samp + s_end)
+            first_samp = event_start[k] - raw.first_samp - s_start
+            last_samp = event_start[k] - raw.first_samp + s_end
+            x = np.array([first_samp, last_samp])
+            data = raw[picks, first_samp:last_samp]
+            f = interpolate.interp1d(x, data[0][:, [0, -1]])
+            xnew = np.arange(first_samp, last_samp)
             interp_data = f(xnew)
-            raw._data[:, event_start[k] - raw.first_samp - s_start:\
-                         event_start[k] - raw.first_samp + s_end] = interp_data
+            raw[picks, first_samp:last_samp] = interp_data
     if mode == 'window':
         window = 1 - np.r_[signal.hann(4)[:2], np.ones(s_end + s_start - 4), \
                             signal.hann(4)[-2:]].T
         for k in range(len(event_start)):
-            raw._data[:, event_start[k] - raw.first_samp - s_start:\
-                         event_start[k] - raw.first_samp + s_end] *= \
-                                                    window[np.newaxis, :]
+            first_samp = event_start[k] - raw.first_samp - s_start
+            last_samp = event_start[k] - raw.first_samp + s_end
+            data = raw[picks, first_samp:last_samp]
+            raw[picks, first_samp:last_samp] = data[0] * window[np.newaxis, :]
     return raw
diff --git a/mne/artifacts/tests/test_stim.py b/mne/artifacts/tests/test_stim.py
index 3a6827d..45be159 100644
--- a/mne/artifacts/tests/test_stim.py
+++ b/mne/artifacts/tests/test_stim.py
@@ -13,7 +13,7 @@ raw_fname = op.join(data_path, 'test_raw.fif')
 event_fname = op.join(data_path, 'test-eve.fif')
 
 
-def test_find_ecg():
+def test_stim_elim():
     """Test eliminate stim artifact"""
     raw = Raw(raw_fname, preload=True)
     events = read_events(event_fname)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/python-mne.git



More information about the debian-med-commit mailing list