MouseAgingData 1.2.0
Install the package using Bioconductor. Start R and enter:
if(!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("MouseAgingData")
Now, load the package and dependencies used in the vignette.
library(scater)
library(MouseAgingData)
Single-cell sequencing technology can reveal intricate details about individual cells, allowing researchers to interrogate the genetic make up of cells within a heterogeneous sample. Single-cell sequencing can provide insights into various aspects of cellular biology, such as characterization of cell populations, identification of rare cell types, and quantification of expression levels in cell types across experimental treatments. Given the wide utility, single-cell sequencing has expanded scientific knowledge in various fields, including cancer research, immunology, developmental biology, neurobiology, and microbiology.
There are several methods for generating single-cell sequencing data which can extract information (DNA or RNA) from a cell. These include, but are not limited to:
Droplet-based platforms: such as 10x Genomics Chromium system, inDrop, Drop-seq, and Seq-Well, which use microfluidic devices to isolate individual cells into tiny droplets along with unique barcoded beads.
Plate or microwell-based methods: such as the Smart-seq2 protocol or the C1 system by Fluidigm, respectively. These platforms employ microfluidic chips or multi-well arrays to capture and process individual cells. Unlike droplet-based platforms, these cells are manually or automatically sorted into individual wells of the plate.
The MouseAgingData
package provides analysis-ready data from an aging mouse
brain parabiosis single cell study by Ximerakis & Holton et al.,
(2023) and additional datasets.
The contents of the package can be accessed by querying ExperimentHub with the
package name.
Ximerakis & Holton et al. investigated how heterochronic parabiosis (joining of the circulatory systems) affects the mouse brain in terms of aging and rejuvenation. They identified gene signatures attributed to aging in specific cell-types. They focus especially on brain endothelial cells, which showed dynamic transcriptional changes that affect vascular structure and function.
The parabiosis single cell RNA-seq (Ximerakis, Holton et al Nature Aging 2023) includes 105,329 cells, 31 cell types across 8 OX, 8 YX, 7 YY, 9 YO, 7 OO, 11 OY animals, and 20905 features.
This vignette demonstrates how to access and visualize the droplet data using reduced dimensionality coordinates provided by the authors.
sce <- parabiosis10x()
#> see ?MouseAgingData and browseVignettes('MouseAgingData') for documentation
#> loading from cache
View the SingleCellExperiment
data.
sce
#> class: SingleCellExperiment
#> dim: 20905 105329
#> metadata(1): cell_colors
#> assays(1): counts
#> rownames(20905): Xkr4 Gm37381 ... DHRSX CAAA01147332.1
#> rowData names(2): geneID HVG
#> colnames: NULL
#> colData names(12): barcode nCount_RNA ... cell_ontology_class
#> cell_ontology_id
#> reducedDimNames(3): PCA UMAP TSNE
#> mainExpName: NULL
#> altExpNames(0):
Do some checking to make sure the data loaded correctly and is what we expected. Here, we are viewing the cell information of the object. We see that there are indeed 105329 cells and 20905 features.
head(colData(sce))
#> DataFrame with 6 rows and 12 columns
#> barcode nCount_RNA nFeature_RNA animal batch animal_type
#> <character> <numeric> <integer> <factor> <factor> <factor>
#> 1 AAACCTGGTCAGTGGA 2100.06 815 OO1L Batch1 OO
#> 2 AAACCTGGTGTCAATC 4356.88 3120 OO1L Batch1 OO
#> 3 AAACCTGTCAAACCAC 2679.97 1208 OO1L Batch1 OO
#> 4 AAACCTGTCGTTACAG 3647.74 2137 OO1L Batch1 OO
#> 5 AAACGGGCACGAGAGT 1904.85 703 OO1L Batch1 OO
#> 6 AAAGATGAGCGTAGTG 3732.96 2247 OO1L Batch1 OO
#> percent_mito percent_ribo cell_type subpopulation
#> <numeric> <numeric> <factor> <factor>
#> 1 1.253203 5.81833 OPC qOPC
#> 2 0.510883 3.48925 NendC NendC_3
#> 3 0.789625 3.67955 OPC qOPC
#> 4 0.607773 3.99532 GABA GABA_3
#> 5 1.746996 8.52778 EC EC_1
#> 6 0.652196 3.85105 GABA GABA_13
#> cell_ontology_class cell_ontology_id
#> <factor> <factor>
#> 1 oligodendrocyte precursor cell CL_0002453
#> 2 neuroendocrine cell CL_0000165
#> 3 oligodendrocyte precursor cell CL_0002453
#> 4 GABAergic neuron CL_0000617
#> 5 endothelial cell CL_0000115
#> 6 GABAergic neuron CL_0000617
For this dataset, the authors have provided us with their exact UMAP and
tSNE coordinates, as well as their color scheme representing the cell types from
their paper. This can be accessed in the metadata slot of the
SingleCellExperiment
object with the metadata()
function. To consistently
recreate their figures, let’s plot using their provided reduced dimensionality
coordinates.
cell.color <- metadata(sce)$cell_color
gg <- plotUMAP(sce, color_by = "cell_type", text_by = "cell_type")
gg + theme(legend.title=element_blank()) +
scale_color_manual(values=c(cell.color))
#> Scale for colour is already present.
#> Adding another scale for colour, which will replace the existing scale.
This plot is a recreation of Fig. 2C from Ximerakis & Holton et al. 2023.
We can also plot a tSNE with their provided coordinates.
gg <- plotTSNE(sce, color_by = "cell_type", text_by = "cell_type")
gg + theme(legend.title=element_blank()) +
scale_color_manual(values=c(cell.color))
#> Scale for colour is already present.
#> Adding another scale for colour, which will replace the existing scale.
Ximerakis & Holton et al. (2023) Heterochronic parabiosis reprograms the mouse brain transcriptome by shifting aging signatures in multiple cell types. 3, 327–345. doi: https://doi.org/10.1038/s43587-023-00373-6.
sessionInfo()
#> R version 4.4.1 (2024-06-14)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 24.04.1 LTS
#>
#> Matrix products: default
#> BLAS: /home/biocbuild/bbs-3.20-bioc/R/lib/libRblas.so
#> LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0
#>
#> locale:
#> [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
#> [3] LC_TIME=en_GB LC_COLLATE=C
#> [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
#> [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
#> [9] LC_ADDRESS=C LC_TELEPHONE=C
#> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
#>
#> time zone: America/New_York
#> tzcode source: system (glibc)
#>
#> attached base packages:
#> [1] stats4 stats graphics grDevices utils datasets methods
#> [8] base
#>
#> other attached packages:
#> [1] MouseAgingData_1.2.0 scater_1.34.0
#> [3] ggplot2_3.5.1 scuttle_1.16.0
#> [5] SingleCellExperiment_1.28.0 SummarizedExperiment_1.36.0
#> [7] Biobase_2.66.0 GenomicRanges_1.58.0
#> [9] GenomeInfoDb_1.42.0 IRanges_2.40.0
#> [11] S4Vectors_0.44.0 BiocGenerics_0.52.0
#> [13] MatrixGenerics_1.18.0 matrixStats_1.4.1
#> [15] BiocStyle_2.34.0
#>
#> loaded via a namespace (and not attached):
#> [1] DBI_1.2.3 gridExtra_2.3 rlang_1.1.4
#> [4] magrittr_2.0.3 compiler_4.4.1 RSQLite_2.3.7
#> [7] png_0.1-8 vctrs_0.6.5 pkgconfig_2.0.3
#> [10] crayon_1.5.3 fastmap_1.2.0 dbplyr_2.5.0
#> [13] XVector_0.46.0 labeling_0.4.3 utf8_1.2.4
#> [16] rmarkdown_2.29 UCSC.utils_1.2.0 ggbeeswarm_0.7.2
#> [19] purrr_1.0.2 bit_4.5.0 xfun_0.49
#> [22] zlibbioc_1.52.0 cachem_1.1.0 beachmat_2.22.0
#> [25] jsonlite_1.8.9 blob_1.2.4 highr_0.11
#> [28] DelayedArray_0.32.0 BiocParallel_1.40.0 irlba_2.3.5.1
#> [31] parallel_4.4.1 R6_2.5.1 bslib_0.8.0
#> [34] jquerylib_0.1.4 Rcpp_1.0.13-1 bookdown_0.41
#> [37] knitr_1.48 Matrix_1.7-1 tidyselect_1.2.1
#> [40] abind_1.4-8 yaml_2.3.10 viridis_0.6.5
#> [43] codetools_0.2-20 curl_5.2.3 lattice_0.22-6
#> [46] tibble_3.2.1 withr_3.0.2 KEGGREST_1.46.0
#> [49] evaluate_1.0.1 BiocFileCache_2.14.0 ExperimentHub_2.14.0
#> [52] Biostrings_2.74.0 pillar_1.9.0 BiocManager_1.30.25
#> [55] filelock_1.0.3 generics_0.1.3 BiocVersion_3.20.0
#> [58] munsell_0.5.1 scales_1.3.0 glue_1.8.0
#> [61] tools_4.4.1 AnnotationHub_3.14.0 BiocNeighbors_2.0.0
#> [64] ScaledMatrix_1.14.0 cowplot_1.1.3 grid_4.4.1
#> [67] AnnotationDbi_1.68.0 colorspace_2.1-1 GenomeInfoDbData_1.2.13
#> [70] beeswarm_0.4.0 BiocSingular_1.22.0 vipor_0.4.7
#> [73] cli_3.6.3 rsvd_1.0.5 rappdirs_0.3.3
#> [76] fansi_1.0.6 S4Arrays_1.6.0 viridisLite_0.4.2
#> [79] dplyr_1.1.4 gtable_0.3.6 sass_0.4.9
#> [82] digest_0.6.37 SparseArray_1.6.0 ggrepel_0.9.6
#> [85] farver_2.1.2 memoise_2.0.1 htmltools_0.5.8.1
#> [88] lifecycle_1.0.4 httr_1.4.7 mime_0.12
#> [91] bit64_4.5.2