Home | Trees | Indices | Help |
|
---|
|
1 # emacs: -*- mode: python; py-indent-offset: 4; indent-tabs-mode: nil -*- 2 # vi: set ft=python sts=4 ts=4 sw=4 et: 3 ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ## 4 # 5 # See COPYING file distributed along with the PyMVPA package for the 6 # copyright and license terms. 7 # 8 ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ## 9 """Unit tests for PyMVPA EEP dataset""" 10 11 import unittest 12 import os.path 13 import numpy as N 14 15 from mvpa import pymvpa_dataroot 16 from mvpa.base import externals 17 from mvpa.datasets.eep import EEPDataset 18 from mvpa.misc.io.eepbin import EEPBin 19 202277 #self.failUnless(d.labels_map) 7824 eb = EEPBin(os.path.join(pymvpa_dataroot, 'eep.bin')) 25 26 ds = [ EEPDataset(source, labels=[1, 2]) for source in 27 (eb, os.path.join(pymvpa_dataroot, 'eep.bin')) ] 28 29 for d in ds: 30 self.failUnless(d.nsamples == 2) 31 self.failUnless(d.nfeatures == 128) 32 self.failUnless(d.channelids[23] == 'Pz') 33 self.failUnless(N.round(d.t0 + 0.002, decimals=3) == 0) 34 self.failUnless(N.round(d.dt - 0.002, decimals=3) == 0) 35 self.failUnless(N.round(d.samplingrate) == 500)36 3739 eb = EEPBin(os.path.join(pymvpa_dataroot, 'eep.bin')) 40 41 self.failUnless(eb.nchannels == 32) 42 self.failUnless(eb.nsamples == 2) 43 self.failUnless(eb.ntimepoints == 4) 44 self.failUnless(eb.t0 - eb.dt < 0.00000001) 45 self.failUnless(len(eb.channels) == 32) 46 self.failUnless(eb.data.shape == (2, 32, 4))47 4850 ds = EEPDataset(os.path.join(pymvpa_dataroot, 'eep.bin'), 51 labels=[1, 2], labels_map={1:100, 2:101}) 52 channelids = N.array(ds.channelids).copy() 53 self.failUnless(N.round(ds.samplingrate) == 500.0) 54 55 if not externals.exists('scipy'): 56 return 57 58 # should puke when called with nothing 59 self.failUnlessRaises(ValueError, ds.resample) 60 61 # now for real -- should divide nsamples into half 62 rds = ds.resample(sr=250, inplace=False) 63 # We should have not changed anything 64 self.failUnless(N.round(ds.samplingrate) == 500.0) 65 66 # by default do 'inplace' resampling 67 ds.resample(sr=250) 68 for d in [rds, ds]: 69 self.failUnless(N.round(d.samplingrate) == 250) 70 self.failUnless(d.nsamples == 2) 71 self.failUnless(N.abs((d.dt - 1.0/250)/d.dt)<1e-5) 72 self.failUnless(N.all(d.channelids == channelids)) 73 # lets now see if we still have a mapper 74 self.failUnless(d.O.shape == (2, len(channelids), 2)) 75 # and labels_map 76 self.failUnlessEqual(d.labels_map, {1:100, 2:101})80 return unittest.makeSuite(EEPDatasetTests)81 82 83 if __name__ == '__main__': 84 import runner 85
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Mon Apr 23 23:09:46 2012 | http://epydoc.sourceforge.net |