def _compute_cospectral_covs(epochs, n_fft, n_overlap, fmin, fmax, fs): X = epochs.get_data() cospectral_covs = CospCovariances(window=n_fft, overlap=n_overlap / n_fft, fmin=fmin, fmax=fmax, fs=fs) return cospectral_covs.transform(X).mean(axis=0).transpose((2, 0, 1))
def test_cosp_covariances(rndstate): """Test fit CospCovariances""" n_matrices, n_channels, n_times = 2, 3, 1000 x = rndstate.randn(n_matrices, n_channels, n_times) cov = CospCovariances() cov.fit(x) covmats = cov.transform(x) assert cov.get_params() == dict(window=128, overlap=0.75, fmin=None, fmax=None, fs=None) n_freqs = 65 assert covmats.shape == (n_matrices, n_channels, n_channels, n_freqs) assert is_spsd(covmats.transpose(0, 3, 1, 2))