Spine#

The results for the CNeuroMod quantitative MRI longitudinal stability study for the spinal cord are displayed below in two sections, Morphometry and Quantitative MRI. The pipeline for this used to prepare this dataset is described in a diagram in the Materials and Methods. The mean intrasubject and intersubject COVs are reported in tables below each respective figure, as well as the intrasubject COV standard deviation.

The figures are presented in an interactive format using the Plotly framework, you can hover to view the values of each datapoints, use the dropdown box (when applicable) to change between metrics, click and drag to zoom in, etc.

This page was generated using an Jupyter Notebook, and all the commands run to reproduce the figure using the prepared and packaged ROI data are shown prior to the figures. If you’d like to re-run the notebook, you can click the 🚀 icon on the top right of this page and then on “Binder” to open a MyBinder session in your browser - no installation is required.

Morphometry#

Code imports#

# Python imports 
from IPython.display import clear_output
from pathlib import Path
import numpy as np

import pandas as pd
pd.set_option('display.max_rows', None)
pd.set_option('display.max_columns', None)
pd.set_option('display.width', 1000)
pd.set_option('display.colheader_justify', 'center')
pd.set_option('display.precision', 1)

# Import custom tools
from tools.data import Data
from tools.plot import Plot
from tools.stats import Stats

Download data#

data_type = 'spine'
release_version = 'latest'

dataset = Data(data_type)
dataset.download(release_version)
--2024-04-17 00:37:39--  https://github.com/courtois-neuromod/anat-processing/releases/download/r20220804/spinalcord_results.zip
Resolving github.com (github.com)... 140.82.113.3
Connecting to github.com (github.com)|140.82.113.3|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/333825187/c7568fab-84d3-45d2-950a-09ca065b1495?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240417%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240417T003739Z&X-Amz-Expires=300&X-Amz-Signature=46c4d4cb61cff557e4da03fe5e7c8d4587c472ec5eb00cd5f7a04a9b4e1683a8&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=333825187&response-content-disposition=attachment%3B%20filename%3Dspinalcord_results.zip&response-content-type=application%2Foctet-stream [following]
--2024-04-17 00:37:39--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/333825187/c7568fab-84d3-45d2-950a-09ca065b1495?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240417%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240417T003739Z&X-Amz-Expires=300&X-Amz-Signature=46c4d4cb61cff557e4da03fe5e7c8d4587c472ec5eb00cd5f7a04a9b4e1683a8&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=333825187&response-content-disposition=attachment%3B%20filename%3Dspinalcord_results.zip&response-content-type=application%2Foctet-stream
Resolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.111.133, 185.199.108.133, 185.199.109.133, ...
Connecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.111.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 47607 (46K) [application/octet-stream]
Saving to: ‘spinalcord_results.zip’

     0K .......... .......... .......... .......... ......    100% 7.80M=0.006s

2024-04-17 00:37:39 (7.80 MB/s) - ‘spinalcord_results.zip’ saved [47607/47607]

Load data plot it#

dataset.num_sessions
dataset.load()

fig_spine = Plot(dataset, plot_name = 'spine-wm')

fig_spine.title = 'WM spinal cord morphometry'

White matter#

# If you're running this notebook in a Jupyter Notebook (eg, on MyBinder), change 'jupyter-book' to 'notebook'
fig_spine.display('jupyter-book', fig_id = 'spine-csa-wm')

Grey matter#

fig_spine = Plot(dataset, plot_name = 'spine-gm')

fig_spine.title = 'GM spinal cord morphometry'
# If you're running this notebook in a Jupyter Notebook (eg, on MyBinder), change 'jupyter-book' to 'notebook'
fig_spine.display('jupyter-book', fig_id = 'spine-csa-gm')

Statistics#

stats_csa = Stats(dataset)
stats_csa.build_df()
stats_csa.build_stats_table()
display(stats_csa.stats_table)
WM area (T1w) WM area (T2w) GM area (T2s)
intrasubject COV mean [%] 4.5 2.3 4.6
intrasubject COV std [%] 3.3 1.7 2.6
intersubject mean COV [%] 5.1 9.7 4.3
ICC 0.4 1.0 0.3
wsCOV 4.8 2.4 4.9
bsCOV 5.1 9.6 4.3

Quantitative MRI#

White matter#

data_type = 'qmri'
release_version = 'latest'

dataset = Data(data_type)
dataset.download(release_version)
--2024-04-17 00:37:39--  https://github.com/courtois-neuromod/anat-processing/releases/download/r20220804/spinalcord_results.zip
Resolving github.com (github.com)... 140.82.113.3
Connecting to github.com (github.com)|140.82.113.3|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/333825187/c7568fab-84d3-45d2-950a-09ca065b1495?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240417%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240417T003739Z&X-Amz-Expires=300&X-Amz-Signature=46c4d4cb61cff557e4da03fe5e7c8d4587c472ec5eb00cd5f7a04a9b4e1683a8&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=333825187&response-content-disposition=attachment%3B%20filename%3Dspinalcord_results.zip&response-content-type=application%2Foctet-stream [following]
--2024-04-17 00:37:39--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/333825187/c7568fab-84d3-45d2-950a-09ca065b1495?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240417%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240417T003739Z&X-Amz-Expires=300&X-Amz-Signature=46c4d4cb61cff557e4da03fe5e7c8d4587c472ec5eb00cd5f7a04a9b4e1683a8&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=333825187&response-content-disposition=attachment%3B%20filename%3Dspinalcord_results.zip&response-content-type=application%2Foctet-stream
Resolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.109.133, 185.199.108.133, 185.199.111.133, ...
Connecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.109.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 47607 (46K) [application/octet-stream]
Saving to: ‘spinalcord_results.zip’

     0K .......... .......... .......... .......... ......    100% 9.41M=0.005s

2024-04-17 00:37:40 (9.41 MB/s) - ‘spinalcord_results.zip’ saved [47607/47607]
dataset.load()
fig_spine = Plot(dataset, plot_name = 'spine-2')
fig_spine.title = 'Spinal cord qMRI measures'
# If you're running this notebook in a Jupyter Notebook (eg, on MyBinder), change 'jupyter-book' to 'notebook'
fig_spine.display('jupyter-book', fig_id = 'spine-qmri-wm')

Statistics#

stats_qmri = Stats(dataset)
stats_qmri.build_df()
stats_qmri.build_stats_table()
display(stats_qmri.stats_table)
FA (DWI) MD (DWI) RD (DWI) MTR MTsat T1 (MTsat)
intrasubject COV mean [%] 3.9 5.0 9.5 5.1 7.9 6.4
intrasubject COV std [%] 0.9 1.8 2.8 5.2 4.9 3.5
intersubject mean COV [%] 4.3 5.2 8.4 4.6 4.0 7.9
ICC 0.6 0.5 0.4 0.2 0.0 0.7
wsCOV 4.2 5.4 10.3 5.4 8.4 6.9
bsCOV 4.3 5.3 8.4 4.6 3.9 8.0