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.10

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.10
File Size Uploaded Provenance
neuro_fpca_fmri-0.0.10.tar.gz 7.1 MB Without provenance Details

Built distribution (wheel)

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

Total release size: 7.2 MB

Release files / neuro_fpca_fmri-0.0.10.tar.gz

Download URL neuro_fpca_fmri-0.0.10.tar.gz
Size 7.1 MB
Tags Source
SHA-256 checksum
How to use checksums
bd7edc782228978a85bb57d461c4151c39435d3de55cf5333b2d36f7dbf7d5e3
BLAKE2b-256 checksum
How to use checksums
5116ba60b94b8de957a26e7e0c2f28977d7c0f667c1c23e6d781530b21da8151
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

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

Download URL neuro_fpca_fmri-0.0.10-py3-none-any.whl
Size 120.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dcd5e9a6561f2b66ffb3796b7cda6465e202f5c3eb748feb9f08f284dee839cd
BLAKE2b-256 checksum
How to use checksums
5a775f9975f66ba725c4f1fc5772d6c78f7fec40c18b59183207bd805ca17e84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Security for Neuro-fPCA-fMRI 0.0.10

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