Python versions and dependencies#
DIPY follows the Scientific Python SPEC 0 — Minimum Supported Versions recommendation as closely as possible. SPEC 0 defines the minimum supported versions of Python and core dependencies based on their release dates.
Further information can be found in 🛠️ Toolchain Roadmap.
Dependencies#
Core dependencies (required)#
DIPY depends on the following third-party Python packages:
numpy - numerical computation and array operations
scipy - mathematical and scientific operations
cython - performance-critical compiled extensions
nibabel - reading and writing neuroimaging file formats
h5py - handling large datasets in HDF5 formats
tqdm - progress bars for long-running operations
trx-python - tractography file format support
Optional dependencies#
The following packages are optional but enable additional features:
fury - 3D visualisation of imaging data
matplotlib - scientific plotting and 2D visualisation
ipython - interactive computing and code exploration
Module-specific dependencies#
The following packages are required only for specific DIPY modules:
cvxpy - convex optimization (required for some reconstruction models)
scikit-learn - machine learning utilities
statsmodels - statistical analysis
pandas - data manipulation and analysis
tensorflow - deep learning models