[med-svn] [python-mne] 29/376: fix in raw + test raw write
Yaroslav Halchenko
debian at onerussian.com
Fri Nov 27 17:22:00 UTC 2015
This is an automated email from the git hooks/post-receive script.
yoh pushed a commit to annotated tag v0.1
in repository python-mne.
commit 5e8cb91950391d5f4f7e7ba114c8412ad95d6cc5
Author: Alexandre Gramfort <alexandre.gramfort at inria.fr>
Date: Wed Jan 5 16:38:24 2011 -0500
fix in raw + test raw write
---
examples/read_write_raw.py | 12 ++----------
fiff/raw.py | 2 +-
fiff/tests/test_raw.py | 45 ++++++++++++++++++++++++++++++++++++++++++++-
3 files changed, 47 insertions(+), 12 deletions(-)
diff --git a/examples/read_write_raw.py b/examples/read_write_raw.py
index 328c74a..7e5df88 100644
--- a/examples/read_write_raw.py
+++ b/examples/read_write_raw.py
@@ -5,7 +5,6 @@ Read and write raw data in 60-sec blocks
print __doc__
from math import ceil
-from fiff.constants import FIFF
import fiff
@@ -19,6 +18,7 @@ want_meg = True
want_eeg = False
want_stim = False
include = ['STI 014']
+# include = []
# include = ['STI101', 'STI201', 'STI301']
picks = fiff.pick_types(raw['info'], meg=want_meg, eeg=want_eeg,
@@ -38,7 +38,7 @@ quantum = int(ceil(quantum_sec * raw['info']['sfreq']))
#
# To read the whole file at once set
#
-# quantum = to - from + 1;
+# quantum = to - from_ + 1;
#
#
# Read and write all the data
@@ -54,14 +54,6 @@ for first in range(from_, to, quantum):
raw['fid'].close()
outfid.close()
print inst
- # #
- # # You can add your own miracle here
- # #
- # print 'Writing...'
- # if first_buffer:
- # if first > 0:
- # fiff.write.write_int(outfid, FIFF.FIFF_FIRST_SAMPLE, first)
- # first_buffer = False
fiff.write_raw_buffer(outfid, data, cals)
print '[done]'
diff --git a/fiff/raw.py b/fiff/raw.py
index d9ac315..81174bd 100644
--- a/fiff/raw.py
+++ b/fiff/raw.py
@@ -473,7 +473,7 @@ def start_writing_raw(name, info, sel=None):
#
# Scan numbers may have been messed up
#
- chs[k].scanno = k
+ chs[k].scanno = k + 1 # scanno starts at 1 in FIF format
chs[k].range = 1.0
cals.append(chs[k]['cal'])
write_ch_info(fid, chs[k])
diff --git a/fiff/tests/test_raw.py b/fiff/tests/test_raw.py
index df98397..4643fe2 100644
--- a/fiff/tests/test_raw.py
+++ b/fiff/tests/test_raw.py
@@ -1,9 +1,9 @@
import os
import os.path as op
-import numpy as np
from numpy.testing import assert_array_almost_equal, assert_equal
+from math import ceil
import fiff
MNE_SAMPLE_DATASET_PATH = os.getenv('MNE_SAMPLE_DATASET_PATH')
@@ -23,3 +23,46 @@ def test_io_raw():
data, times = fiff.read_raw_segment_times(raw, from_=100, to=115,
sel=meg_channels_idx)
+ # Writing
+
+ # Set up pick list: MEG + STI 014 - bad channels
+ want_meg = True
+ want_eeg = False
+ want_stim = False
+ include = ['STI 014']
+
+ picks = fiff.pick_types(raw['info'], meg=want_meg, eeg=want_eeg,
+ stim=want_stim, include=include,
+ exclude=raw['info']['bads'])
+
+ print "Number of picked channels : %d" % len(picks)
+
+ outfid, cals = fiff.start_writing_raw('raw.fif', raw['info'], picks)
+ #
+ # Set up the reading parameters
+ #
+ from_ = raw['first_samp']
+ to = raw['last_samp']
+ quantum_sec = 10
+ quantum = int(ceil(quantum_sec * raw['info']['sfreq']))
+ #
+ # Read and write all the data
+ #
+ first_buffer = True
+ for first in range(from_, to, quantum):
+ last = first + quantum
+ if last > to:
+ last = to
+ try:
+ data, times = fiff.read_raw_segment(raw, first, last, picks)
+ except Exception as inst:
+ raw['fid'].close()
+ outfid.close()
+ print inst
+
+ fiff.write_raw_buffer(outfid, data, cals)
+ print '[done]'
+
+ fiff.finish_writing_raw(outfid)
+ raw['fid'].close()
+
--
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