diff --git a/examples/Basic usage.ipynb b/examples/Basic usage.ipynb index 80109731..919341fe 100755 --- a/examples/Basic usage.ipynb +++ b/examples/Basic usage.ipynb @@ -279,7 +279,7 @@ "t = 1\n", "\n", "(\n", - " hv.Curve(experiment.deltaf_raw[c][t], label=\"Raw\", vdims=[\"df/f0\"])\n", + " hv.Curve(experiment.deltaf_raw[c][t][0, :], label=\"Raw\", vdims=[\"df/f0\"])\n", " * hv.Curve(experiment.deltaf_result[c, t][0, :], label=\"Decontaminated\")\n", ")" ] diff --git a/fissa/core.py b/fissa/core.py index 07d46d55..9fb2eaa0 100644 --- a/fissa/core.py +++ b/fissa/core.py @@ -395,7 +395,7 @@ class Experiment: deltaf_raw : :class:`numpy.ndarray` A :class:`numpy.ndarray` of shape ``(n_rois, n_trials)``, each element - of which is itself a :class:`numpy.ndarray` shaped ``(n_timepoint, )``. + of which is itself a :class:`numpy.ndarray` shaped ``(1, n_timepoint)``. The amount of change in fluorence relative to the baseline fluorence (Δf/f\ :sub:`0`). @@ -403,6 +403,10 @@ class Experiment: This field is only populated after :meth:`calc_deltaf` has been run; until then, it is set to ``None``. + .. versionchanged:: 1.0.0 + The shape of the interior arrays changed from ``(n_timepoint, )`` + to ``(1, n_timepoint)``. + deltaf_result : :class:`numpy.ndarray` A :class:`numpy.ndarray` of shape ``(n_rois, n_trials)``, each element of which is itself a :class:`numpy.ndarray` shaped @@ -964,7 +968,7 @@ def calc_deltaf(self, freq, use_raw_f0=True, across_trials=True): for trial in range(self.nTrials): nextTrial = curTrial + self.raw[cell][trial].shape[1] signal = raw_conc[curTrial:nextTrial] - deltaf_raw[cell][trial] = signal + deltaf_raw[cell][trial] = np.expand_dims(signal, axis=0) signal = result_conc[:, curTrial:nextTrial] deltaf_result[cell][trial] = signal curTrial = nextTrial @@ -986,7 +990,7 @@ def calc_deltaf(self, freq, use_raw_f0=True, across_trials=True): result_sig = (result_sig - result_f0) / result_f0 # store deltaf/f0s - deltaf_raw[cell][trial] = raw_sig + deltaf_raw[cell][trial] = np.expand_dims(raw_sig, axis=0) deltaf_result[cell][trial] = result_sig self.deltaf_raw = deltaf_raw diff --git a/fissa/tests/resources/b/expected_py2.npz b/fissa/tests/resources/b/expected_py2.npz index 761d8442..7f50122f 100644 Binary files a/fissa/tests/resources/b/expected_py2.npz and b/fissa/tests/resources/b/expected_py2.npz differ diff --git a/fissa/tests/resources/b/expected_py3.npz b/fissa/tests/resources/b/expected_py3.npz index 0eecafad..325e9bff 100644 Binary files a/fissa/tests/resources/b/expected_py3.npz and b/fissa/tests/resources/b/expected_py3.npz differ diff --git a/fissa/tests/test_core.py b/fissa/tests/test_core.py index cefd08e5..8ef9cb11 100644 --- a/fissa/tests/test_core.py +++ b/fissa/tests/test_core.py @@ -178,12 +178,8 @@ def compare_matlab(self, fname, experiment, compare_deltaf=None): M["df_result"][0, 0][0][0, 0][0], experiment.deltaf_result[0, 0], ) - # Row and column vectors on MATLAB are 2d instead of 1d, and df_raw - # is a vector, not a matrix, so has an extra dimension. - # N.B. This extra dimension is in the wrong place as it doesn't align - # with the other attributes. self.assert_allclose( - M["df_raw"][0, 0][0][0, 0][0][0, :], + M["df_raw"][0, 0][0][0, 0][0], experiment.deltaf_raw[0, 0], )