Пример #1
0
 def test_agg_ch(self):
     """Test channels aggregation."""
     # build dataset (with aggregation)
     d_3d = self._get_data(3)
     ds = DatasetEphy(d_3d, roi='roi', agg_ch=True, **kw)
     ds_roi2 = ds.get_roi_data("roi_0", copnorm=False)
     np.testing.assert_array_equal(ds_roi2['agg_ch'].data, [0] * 30)
     # build dataset (without aggregation)
     ds = DatasetEphy(d_3d, roi='roi', agg_ch=False, **kw)
     ds_roi0 = ds.get_roi_data("roi_0", copnorm=False)
     np.testing.assert_array_equal(ds_roi0['agg_ch'].data,
                                   [0] * 10 + [1] * 10 + [6] * 10)
Пример #2
0
 def test_multivariate(self):
     """Test multivariate"""
     d_4d = self._get_data(4)
     # multivariate = False
     ds = DatasetEphy(d_4d, roi='roi', multivariate=False, **kw)
     x_roi2 = ds.get_roi_data('roi_2')
     assert x_roi2.dims == ('freqs', 'times', 'mv', 'rtr')
     assert x_roi2.shape == (4, 100, 1, 20)
     # multivariate = True
     d_4d = self._get_data(4)
     ds = DatasetEphy(d_4d, roi='roi', multivariate=True, **kw)
     x_roi2 = ds.get_roi_data('roi_2')
     assert x_roi2.dims == ('times', 'mv', 'rtr')
     assert x_roi2.shape == (100, 4, 20)
Пример #3
0
 def test_copnorm(self):
     """Test function copnorm."""
     # build dataset
     d_3d = self._get_data(3)
     ds = DatasetEphy(d_3d, y='y', z='z', **kw)
     # check copnorm range
     ds_roi2 = ds.get_roi_data("roi_2", copnorm=False)
     s1_r2, s2_r2 = d_3d[0].sel(roi='roi_2'), d_3d[1].sel(roi='roi_2')
     s12 = xr.concat((s1_r2, s2_r2), 'trials').T.expand_dims('mv', axis=-2)
     assert 9. < ds_roi2.data.ravel().mean() < 11.
     np.testing.assert_array_equal(s12.data, ds_roi2.data)
     ds_roi2 = ds.get_roi_data("roi_2", copnorm=True)
     assert -1. < ds_roi2.data.ravel().mean() < 1.
     # check values (gcrn_per_suj=False)
     gc_t = ds.get_roi_data("roi_2", copnorm=True, gcrn_per_suj=False)
     np.testing.assert_array_equal(copnorm_nd(s12.data), gc_t.data)
     # check values (gcrn_per_suj=True)
     gc_t = ds.get_roi_data("roi_2", copnorm=True, gcrn_per_suj=True)
     np.testing.assert_array_equal(
         copnorm_cat_nd(s12.data, gc_t['subject'].data), gc_t.data)
Пример #4
0
 def test_get_roi_data(self):
     """Test getting the data of a single brain region."""
     # build dataset
     d_3d = self._get_data(3)
     ds = DatasetEphy(d_3d, y='y', z='z', **kw)
     # get the data
     ds_roi2 = ds.get_roi_data("roi_2", copnorm=False)
     np.testing.assert_array_equal(ds_roi2.shape, (100, 1, 20))
     # test the data
     s1_r2, s2_r2 = d_3d[0].sel(roi='roi_2'), d_3d[1].sel(roi='roi_2')
     s12 = xr.concat((s1_r2, s2_r2), 'trials').T.expand_dims('mv', axis=-2)
     np.testing.assert_array_equal(ds_roi2.data, s12.data)
     # test task-related variables
     y_12, z_12 = np.r_[y_int[0], y_int[1]], np.r_[z[0], z[1]]
     np.testing.assert_array_equal(y_12, ds_roi2['y'].data)
     np.testing.assert_array_equal(z_12, ds_roi2['z'].data)