Gene expressions

siibra can query gene expression data from the Allen brain atlas. The gene expressions are linked to atlas regions by coordinates of their probes in MNI space. When querying feature by a region, siibra automatically builds a region mask to filter the probes.

Hint

This feature is used by the JuGEx toolbox, which provides an implementation for differential gene expression analysis between two different brain regions as proposed by Bludau et al.

import siibra
from nilearn import plotting

We select a brain region and query for expression levels of GABARAPL2.

region = siibra.get_region("julich 2.9", "V1")
features = siibra.features.get(
    region, siibra.features.molecular.GeneExpressions,
    gene=siibra.vocabularies.GENE_NAMES.GABARAPL2
)
print(features[0])
# Take a peek at how the data looks
features[0].data.head()
<siibra.features.tabular.gene_expression.GeneExpressions object at 0x7f72ad7056d0>
level zscore gene race gender age mni_xyz sample probe_id donor_name
0 10.1143 -0.5496 GABARAPL2 Hispanic F 49 (-7.0, -75.0, 9.0) 124 1046316 H0351.1015
1 13.2146 -0.3578 GABARAPL2 Hispanic F 49 (-7.0, -75.0, 9.0) 124 1046315 H0351.1015
2 10.0664 -0.6653 GABARAPL2 Hispanic F 49 (-6.0, -86.0, 10.0) 125 1046316 H0351.1015
3 13.2105 -0.3696 GABARAPL2 Hispanic F 49 (-6.0, -86.0, 10.0) 125 1046315 H0351.1015
4 10.0061 -0.8110 GABARAPL2 Hispanic F 49 (-7.0, -86.0, 10.0) 126 1046316 H0351.1015


Since gene expressions are spatial features, let’s check the reference space of the results.

space = features[0].anchor.space
print(space)
MNI 152 ICBM 2009c Nonlinear Asymmetric

Plot the locations of the probes that were found, together with the region mask of V1.

all_coords = [p.coordinate for p in features[0].anchor.location]
mask = region.get_regional_map(space)
display = plotting.plot_roi(mask.fetch())
display.add_markers(all_coords, marker_size=5)
004 gene expressions

Total running time of the script: (0 minutes 9.818 seconds)

Gallery generated by Sphinx-Gallery