Skip to main content

A python package for Paradigm Free Mapping (3dPFM and 3dMEPFM).

Project description

pySPFM

The Python version of AFNI's 3dPFM and 3dMEPFM with some extra features like the addition of a spatial regularization similar to the one used by Total Activation.

Latest Version PyPI - Python Version DOI License CircleCI Documentation Status codecov Code style: black pre-commit

Development

This project uses uv for fast, reliable dependency management and tox for testing across multiple Python versions.

Setting up a development environment

  1. Create a virtual environment and install dependencies (including tests) in editable mode:
    uv sync --extra tests
    

Running tests

Run tests for your current Python version:

pytest pySPFM/tests/

Run tests across all supported Python versions (3.10, 3.11, 3.12) using tox:

tox

Run tests for a specific Python version:

tox -e py310  # For Python 3.10

Run linting checks:

tox -e lint

Benefits of uv

  • Fast: 10-100x faster than pip for dependency resolution and installation
  • Deterministic: uv.lock ensures reproducible installations across all environments
  • Reliable: Resolves dependencies consistently

References

  • Caballero-Gaudes, C., Moia, S., Panwar, P., Bandettini, P. A., & Gonzalez-Castillo, J. (2019). A deconvolution algorithm for multi-echo functional MRI: Multi-echo Sparse Paradigm Free Mapping. NeuroImage, 202, 116081–116081. https://doi.org/10.1016/j.neuroimage.2019.116081
  • Caballero Gaudes, C., Petridou, N., Francis, S. T., Dryden, I. L., & Gowland, P. A. (2013). Paradigm free mapping with sparse regression automatically detects single-trial functional magnetic resonance imaging blood oxygenation level dependent responses. Human Brain Mapping. https://doi.org/10.1002/hbm.21452
  • Karahanoǧlu, F. I., Caballero-Gaudes, C., Lazeyras, F., & Van De Ville, D. (2013). Total activation: FMRI deconvolution through spatio-temporal regularization. NeuroImage. https://doi.org/10.1016/j.neuroimage.2013.01.067
  • Uruñuela, E., Bolton, T. A., Van De Ville, D., & Caballero-Gaudes, C. (2023). Hemodynamic Deconvolution Demystified: Sparsity-Driven Regularization at Work. Aperture Neuro, 3, 1-25. https://doi.org/10.52294/001c.87574

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyspfm-1.0.2.tar.gz (6.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyspfm-1.0.2-py3-none-any.whl (71.8 kB view details)

Uploaded Python 3

File details

Details for the file pyspfm-1.0.2.tar.gz.

File metadata

  • Download URL: pyspfm-1.0.2.tar.gz
  • Upload date:
  • Size: 6.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyspfm-1.0.2.tar.gz
Algorithm Hash digest
SHA256 f8e68eb252e56d26446f17dcc5ec1cd65dffa9a2619eb5a702919fddea01e74b
MD5 692dc6eb0c316f1c49767642619521b7
BLAKE2b-256 9cf2cc7b771e2a03267dbf5c64b60b2757224ad7f98df1ffdd0edbd9a08c6dc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspfm-1.0.2.tar.gz:

Publisher: python-publish.yml on Paradigm-Free-Mapping/pySPFM

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyspfm-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: pyspfm-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 71.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyspfm-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 957da022ac48a35fdd9440cc44f5672bbec4bcb6777731ac97fcbb8438b75fe3
MD5 34ccd7f0419e368253231fcc81a6aeb8
BLAKE2b-256 fec523d65d3f36f73eb0dd131103540e63c6fbae0e1d9e4f5ab456af047ef686

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyspfm-1.0.2-py3-none-any.whl:

Publisher: python-publish.yml on Paradigm-Free-Mapping/pySPFM

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page