Skip to main content

Neuro-fPCA-fMRI

https://img.shields.io/pypi/v/neuro-fpca-fmri.svg Documentation Status Updates

Full Documentation

Overview

This module implements a functional principal component analysis (fPCA) pipeline designed for fMRI data. The overall procedure involves the following steps:

  1. Data Loading and Preprocessing

    The 4D fMRI image and an associated 3D binary mask are loaded. The mask extracts voxel-specific time series, and the time axis is defined based on the number of timepoints.

  2. B-Spline Basis Construction

    A set of B-spline basis functions is generated to represent smooth temporal dynamics. Each voxel’s time series is approximated as a linear combination of these basis functions.

  3. Penalty Matrix Construction

    A penalty matrix is computed to ensure smoothness of the estimated coefficients. This penalty is defined via an integral involving products of derivatives (typically the second derivative) of the basis functions.

  4. Regularized Spline Regression

    Each voxel time series is approximated by a spline expansion. The coefficients are estimated via a regularized regression problem, and a generalized cross-validation (GCV) criterion selects a voxel-specific regularization parameter (\(\lambda\)).

  5. Functional Principal Component Analysis

    PCA is performed on the coefficient matrix. Multiplying eigenfunctions by coefficients yields voxel-specific importance scores mapped back to brain images, while the basis applied to each eigenfunction gives the temporal dynamics curve shared across voxels.

Output

For each eigenfunction, the following figures are generated:

  • Voxel importance maps

    Voxel importance map
  • Intensity plot

    Temporal intensity plot
  • Signal intensity of best-scoring voxel

    Best voxel fit

Mathematical background

This program implements the methodology from:

Roberto Viviani, Georg Grön and Manfred Spitzer. Functional Principal Component Analysis of fMRI Data.

Full mathematical derivation is available here: Detailed Math Docs

Credits

This package was created using Cookiecutter and the audreyr/cookiecutter-pypackage template.

License

  • Free software: GNU GPLv3

Author

Refael Kohen <refael.kohen@gmail.com> (Yaniv Assaf Lab, Tel Aviv University).

Metadata

Release files for Neuro-fPCA-fMRI 0.0.22

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Neuro-fPCA-fMRI 0.0.22
File Size Uploaded Provenance
neuro_fpca_fmri-0.0.22.tar.gz 10.0 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for Neuro-fPCA-fMRI 0.0.22
File Interpreter ABI Platform
neuro_fpca_fmri-0.0.22-py3-none-any.whl Python 3 none any Details

Total release size: 10.1 MB

Release files / neuro_fpca_fmri-0.0.22.tar.gz

Download URL neuro_fpca_fmri-0.0.22.tar.gz
Size 10.0 MB
Tags Source
SHA-256 checksum
How to use checksums
ef1b965496926e7bc2c27a13e54b5f68014467bcb54870445041fd5904a02234
BLAKE2b-256 checksum
How to use checksums
dd3242da4931be36ad2dfcf8133ec0e3f9c8f6dce68196194c9a162dc291785e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / neuro_fpca_fmri-0.0.22-py3-none-any.whl

Download URL neuro_fpca_fmri-0.0.22-py3-none-any.whl
Size 143.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
61ae7cb2fb2bd8676636064037fccb5cf295bb140c5ecc80307991bbb074e0e5
BLAKE2b-256 checksum
How to use checksums
74f29643cc0b92074caccdf835bfe2e053a95bb59b0bde7cdd78dc87850cdca5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Security for Neuro-fPCA-fMRI 0.0.22

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page