diff --git a/brainbox/singlecell/singlecell.py b/brainbox/singlecell/singlecell.py index 45621420c..1e90497eb 100644 --- a/brainbox/singlecell/singlecell.py +++ b/brainbox/singlecell/singlecell.py @@ -24,7 +24,8 @@ def acorr(spike_times, bin_size=None, window_size=None): Returns an `(winsize_samples,)` array with the auto-correlogram. """ - xc = xcorr(spike_times, np.zeros_like(spike_times), bin_size=bin_size, window_size=window_size) + xc = xcorr(spike_times, np.zeros_like(spike_times, dtype=np.int32), + bin_size=bin_size, window_size=window_size) return xc[0, 0, :] diff --git a/brainbox/tests/test_singlecell.py b/brainbox/tests/test_singlecell.py index 67f9a1f6f..8f978e413 100644 --- a/brainbox/tests/test_singlecell.py +++ b/brainbox/tests/test_singlecell.py @@ -16,6 +16,18 @@ def test_acorr_0(self): self.assertTrue(np.allclose(c, c_expected)) + def test_acorr_1(self): + spike_times = np.array([0, 10, 10, 20], dtype=np.float64) + bin_size = 1 + winsize_bins = 2 * 3 + 1 + + c_expected = np.zeros(7, dtype=np.float64) + c_expected[3] = 1 + + c = acorr(spike_times, bin_size=bin_size, window_size=winsize_bins) + + self.assertTrue(np.allclose(c, c_expected)) + class TestPeths(unittest.TestCase): def test_peths_synthetic(self):