Skip to content

Commit 0375b4d

Browse files
authored
Merge pull request #181 from netneurolab/update-docs
Update docs
2 parents a89b699 + 212910e commit 0375b4d

File tree

2 files changed

+34
-18
lines changed

2 files changed

+34
-18
lines changed

docs/installation.rst

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,12 @@ to make sure it is properly installed.
2828
Basic installation
2929
==================
3030

31-
This package requires Python 3.7+. Assuming you have the correct version of
32-
Python installed, you can install ``neuromaps`` by opening a terminal and
33-
running the following:
31+
Currently, ``neuromaps`` works with Python 3.8+.
32+
You can install stable versions of ``neuromaps`` from PyPI with ``pip install neuromaps``.
33+
However, we recommend installing from the source repository to get the latest features and bug fixes.
3434

35-
.. .. code-block:: bash
36-
37-
.. pip install neuromaps
38-
39-
.. Alternatively, you can install the most up-to-date version of from GitHub:
35+
You can install ``neuromaps`` from the source repository with ``pip install git+https://github.com/netneurolab/neuromaps.git``
36+
or by cloning the repository and installing from the local directory:
4037

4138
.. code-block:: bash
4239

docs/user_guide/nulls.rst

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,12 @@ significance of the association between the tested maps. Enter: the
1111

1212
This module provides access to a variety of null models that can be used to
1313
generate "null" brain maps that retain aspects of the spatial autocorrelation
14-
of the original brain maps. (For a review of these models refer to `Markello &
15-
Misic, 2021, NeuroImage <https://doi.org/10.1016/j.neuroimage.2021.118052>`_.)
14+
of the original brain maps.
15+
16+
For a review of these models, please refer to
17+
`Markello & Misic, 2021, NeuroImage <https://doi.org/10.1016/j.neuroimage.2021.118052>`_.
18+
We also recommend watching `this recorded session <https://www.youtube.com/watch?v=6DjpNddINZ8>`_
19+
from the OHBM 2024 Educational Course if you are new to this topic.
1620

1721
There are four available null models that can be used with voxel- and
1822
vertex-wise data and eight null models that can be used with parcellated data.
@@ -161,6 +165,11 @@ non-significant.
161165
Nulls for volumetric data
162166
-------------------------
163167

168+
.. warning::
169+
Nulls for high-resolution volumetric data (especially at 1mm or 2mm resolution) can
170+
be **extremely** demanding (days & hundreds of GBs). This is an inherent limitation
171+
of the original model that currently has no immediate workaround!
172+
164173
The majority of spatial nulls work best with data represented in one of the
165174
surface-based coordinate systems. If you are working with data that are
166175
represented in the MNI152 system you must use one of the following three null
@@ -186,12 +195,22 @@ You would call the functions in the same manner as above:
186195
>>> print(nulls.shape)
187196
(224705, 100)
188197
189-
However, this process will take much more time than for equivalent data
190-
represented in a surface-based system, and will need to store the full distance
191-
matrix out as a temporary file (potentially many GB of disk space!). If
192-
possible it is recommended that you mask your data (i.e., with a gray matter
193-
mask) before generating nulls using this procedure.
194198
195-
Note that you can provide parcellation images for volumetric data as described
196-
above! Simply pass the volumetric parcellation image to the ``parcellation``
197-
keyword argument and the function will take care of the rest.
199+
When working with volumetric data, please note some important computational
200+
considerations. While the function supports both voxelwise and parcellated analyses,
201+
processing high-resolution volumetric data (especially at 1mm or 2mm resolution) can
202+
be **extremely** demanding. The calculations for voxelwise data can take several days
203+
to complete even on high-performance computing nodes, and may require hundreds of GBs
204+
of temporary storage space. This is an inherent limitation of the original model that
205+
currently has no immediate workaround (see `BrainSMASH <https://github.com/murraylab/brainsmash>`_).
206+
We welcome any suggestions for improving this method's computational efficiency and
207+
performance.
208+
209+
To make your analysis more tractable, we recommend you consider using parcellated
210+
data instead of voxelwise analysis. Parcellation dramatically reduces both computation
211+
time and storage requirements.
212+
213+
For voxelwise input, if possible it is recommended that you mask your data
214+
(i.e., with a gray matter mask) before generating nulls using this procedure. To use
215+
parcellation images for volumetric data, simply pass the volumetric parcellation image
216+
to the ``parcellation`` keyword argument and the function will take care of the rest.

0 commit comments

Comments
 (0)