functional
lacuna.assets.connectomes.functional
¶
Functional connectome management.
This module provides registration and loading of functional connectomes for voxel-wise lesion network mapping (fLNM).
FunctionalConnectome
dataclass
¶
Loaded functional connectome for fLNM analysis.
Provides path to HDF5 file(s) with voxel-wise timeseries data needed for FunctionalNetworkMapping analysis.
Attributes:
| Name | Type | Description |
|---|---|---|
metadata |
FunctionalConnectomeMetadata
|
Connectome metadata |
data_path |
Path
|
Path to .h5 file or directory with batch files |
is_batched |
bool
|
True if data_path points to directory with multiple files |
Source code in src/lacuna/assets/connectomes/functional.py
list_functional_connectomes(space=None)
¶
List registered functional connectomes.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
space
|
str
|
Filter by coordinate space |
None
|
Returns:
| Type | Description |
|---|---|
list[FunctionalConnectomeMetadata]
|
Matching connectomes |
Examples:
>>> from lacuna.assets.connectomes import list_functional_connectomes
>>>
>>> # List all
>>> connectomes = list_functional_connectomes()
>>>
>>> # Filter by space
>>> mni_connectomes = list_functional_connectomes(space="MNI152NLin6Asym")
Source code in src/lacuna/assets/connectomes/functional.py
load_functional_connectome(name)
¶
Load a functional connectome for fLNM analysis.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Connectome name |
required |
Returns:
| Type | Description |
|---|---|
FunctionalConnectome
|
Loaded connectome with path ready for FunctionalNetworkMapping |
Raises:
| Type | Description |
|---|---|
KeyError
|
If connectome not registered |
Examples:
>>> from lacuna.assets.connectomes import load_functional_connectome
>>> from lacuna.analysis import FunctionalNetworkMapping
>>>
>>> connectome = load_functional_connectome("GSP1000")
>>> analysis = FunctionalNetworkMapping(
... connectome_path=connectome.data_path,
... method="boes"
... )
Source code in src/lacuna/assets/connectomes/functional.py
register_functional_connectome(name, space, resolution, data_path, n_subjects=None, description='')
¶
Register a functional connectome for fLNM analysis.
Supports both single HDF5 files and directories with batched files.
HDF5 Required Structure: - 'timeseries': (n_subjects, n_timepoints, n_voxels) array - 'mask_indices': (3, n_voxels) or (n_voxels, 3) coordinates - 'mask_affine': (4, 4) affine matrix - 'mask_shape': Tuple attribute (e.g., (91, 109, 91))
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Unique identifier (e.g., "GSP1000") |
required |
space
|
str
|
Coordinate space (e.g., "MNI152NLin6Asym") |
required |
resolution
|
float
|
Resolution in mm (typically 2.0) |
required |
data_path
|
str or Path
|
Path to .h5 file or directory containing batch files |
required |
n_subjects
|
int
|
Total sample size (for documentation purposes only) |
None
|
description
|
str
|
Human-readable description |
''
|
Raises:
| Type | Description |
|---|---|
FileNotFoundError
|
If data_path doesn't exist |
ValueError
|
If HDF5 structure is invalid |
Examples:
>>> from lacuna.assets.connectomes import register_functional_connectome
>>>
>>> # Single file
>>> register_functional_connectome(
... name="GSP1000",
... space="MNI152NLin6Asym",
... resolution=2.0,
... data_path="/data/gsp/gsp1000_connectome.h5",
... description="GSP1000 voxel-wise connectome"
... )
>>>
>>> # Batched directory
>>> register_functional_connectome(
... name="GSP1000_batched",
... space="MNI152NLin6Asym",
... resolution=2.0,
... data_path="/data/gsp/batches/",
... description="GSP1000 voxel-wise connectome (batched)"
... )
Source code in src/lacuna/assets/connectomes/functional.py
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 | |
unregister_functional_connectome(name)
¶
Unregister a functional connectome.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Connectome name |
required |
Raises:
| Type | Description |
|---|---|
KeyError
|
If connectome not registered |