Contents

1 Motivation & Introduction

The purpose of this vignette is to explore the file manifests available from the Human Cell Atlas project.

These files provide a metadata summary for a collection of files in a tabular format, including but not limited to information about process and workflow used to generate the file, information about the specimens the file data were derived from, and identifiers connect specific projects, files, and specimens.

The WARP (WDL Analysis Research Pipelines) repository contains information on a variety of pipelines, and can be used alongside a manifest to better understand the metadata.

1.1 Installation and getting started

Evaluate the following code chunk to install packages required for this vignette.

## install from Bioconductor if you haven't already
pkgs <- c("LoomExperiment", "hca")
pkgs_needed <- pkgs[!pkgs %in% rownames(installed.packages())]
BiocManager::install(pkgs_needed)

Load the packages into your R session.

library(dplyr)
library(SummarizedExperiment)
library(LoomExperiment)
library(hca)

2 Example: Default function parameters

default_manifest_tbl <- hca::manifest()
default_manifest_tbl
## # A tibble: 380,253 x 56
##    source_id   source_spec    bundle_uuid  bundle_version      file_document_id 
##    <chr>       <chr>          <chr>        <dttm>              <chr>            
##  1 e2464476-c~ tdr:tdr-fp-c3~ a7882d93-78~ 2021-10-12 19:18:03 000051cb-16b4-5a~
##  2 e2464476-c~ tdr:tdr-fp-c3~ ffed96bd-be~ 2021-05-14 13:58:58 0000591a-0df3-40~
##  3 e2464476-c~ tdr:tdr-fp-c3~ 4ef10b20-d5~ 2019-08-01 20:01:47 0000c13f-a299-48~
##  4 e2464476-c~ tdr:tdr-fp-c3~ 0d43b1a9-71~ 2019-05-17 16:05:38 0001010d-8f9a-41~
##  5 e2464476-c~ tdr:tdr-fp-c3~ 2fb448ac-38~ 2021-02-25 20:02:24 00014fc3-7451-43~
##  6 e2464476-c~ tdr:tdr-fp-c3~ 2a61bc39-23~ 2019-08-01 20:01:47 0001614e-b44f-46~
##  7 e2464476-c~ tdr:tdr-fp-c3~ 17eb537d-b9~ 2019-05-16 21:18:13 00016bff-87d4-47~
##  8 e2464476-c~ tdr:tdr-fp-c3~ 894980d6-f3~ 2021-06-10 09:50:55 00016dd1-216e-4b~
##  9 e2464476-c~ tdr:tdr-fp-c3~ 0678bd67-ff~ 2019-08-01 20:01:47 000183e4-19f4-43~
## 10 e2464476-c~ tdr:tdr-fp-c3~ aa7364b0-c4~ 2021-05-14 13:58:53 000189b0-671a-45~
## # ... with 380,243 more rows, and 51 more variables: file_type <chr>,
## #   file_name <chr>, file_format <chr>, read_index <chr>, file_size <dbl>,
## #   file_uuid <chr>, file_version <dttm>, file_crc32c <chr>, file_sha256 <chr>,
## #   file_content_type <chr>, file_drs_uri <chr>, file_url <chr>,
## #   cell_suspension.provenance.document_id <chr>,
## #   cell_suspension.biomaterial_core.biomaterial_id <chr>,
## #   cell_suspension.estimated_cell_count <chr>, ...

3 Example: Manifest for specific criteria

manifest_filter <- hca::filters(
    projectId = list(is = "4a95101c-9ffc-4f30-a809-f04518a23803"),
    fileFormat = list(is = "loom"),
    workflow = list(is = c("optimus_v4.2.2", "optimus_v4.2.3"))
)

manifest_tibble <- hca::manifest(filters = manifest_filter)
manifest_tibble
## # A tibble: 20 x 56
##    source_id   source_spec    bundle_uuid  bundle_version      file_document_id 
##    <chr>       <chr>          <chr>        <dttm>              <chr>            
##  1 e2464476-c~ tdr:tdr-fp-c3~ b593b66a-d2~ 2020-02-03 01:00:00 131ea511-25f7-58~
##  2 e2464476-c~ tdr:tdr-fp-c3~ 5a63dd0b-52~ 2021-02-02 23:50:00 1bb375a5-d22b-59~
##  3 e2464476-c~ tdr:tdr-fp-c3~ 40733888-3b~ 2021-02-02 23:55:00 1f8ff0fa-6892-5e~
##  4 e2464476-c~ tdr:tdr-fp-c3~ 1a41ebe6-ee~ 2021-02-02 23:50:00 2fffe225-ba6c-59~
##  5 e2464476-c~ tdr:tdr-fp-c3~ c12a6ca2-32~ 2021-02-02 23:50:00 31aa5a18-2a4e-54~
##  6 e2464476-c~ tdr:tdr-fp-c3~ f58d690c-bb~ 2021-02-02 23:50:00 48eea299-8823-5a~
##  7 e2464476-c~ tdr:tdr-fp-c3~ 21c4e2de-ec~ 2021-02-02 23:50:00 51458973-404c-58~
##  8 e2464476-c~ tdr:tdr-fp-c3~ 50620c50-23~ 2021-02-02 23:50:00 5bbebef4-9b14-50~
##  9 e2464476-c~ tdr:tdr-fp-c3~ e3ecdfc2-44~ 2021-02-02 23:55:00 5bc232f2-b77c-52~
## 10 e2464476-c~ tdr:tdr-fp-c3~ ae338c4e-65~ 2021-02-02 23:50:00 6326b602-0f63-54~
## 11 e2464476-c~ tdr:tdr-fp-c3~ d62c4599-47~ 2020-02-03 01:00:00 7848d80b-6b1d-56~
## 12 e2464476-c~ tdr:tdr-fp-c3~ 81df106e-e7~ 2021-02-02 23:55:00 9f8bc032-6276-57~
## 13 e2464476-c~ tdr:tdr-fp-c3~ 2838323c-cd~ 2020-02-03 01:00:00 b98cfaac-64f5-59~
## 14 e2464476-c~ tdr:tdr-fp-c3~ c3f672ad-e6~ 2021-02-02 23:50:00 bf7751ae-ac9d-5b~
## 15 e2464476-c~ tdr:tdr-fp-c3~ a9c90392-ca~ 2020-02-03 01:00:00 c7b6470c-e2f0-51~
## 16 e2464476-c~ tdr:tdr-fp-c3~ 9d0f5cd1-0e~ 2020-02-03 01:00:00 d0b95f2c-98ae-58~
## 17 e2464476-c~ tdr:tdr-fp-c3~ 59de15e1-f5~ 2021-02-02 23:50:00 d18759a6-2a95-5d~
## 18 e2464476-c~ tdr:tdr-fp-c3~ 54fb0e25-57~ 2021-02-02 23:55:00 dfd9905b-d6c9-5a~
## 19 e2464476-c~ tdr:tdr-fp-c3~ 7516565a-e8~ 2021-02-02 23:55:00 e07ca731-b20a-5b~
## 20 e2464476-c~ tdr:tdr-fp-c3~ 8e850d2d-0b~ 2021-02-02 23:50:00 fd41f3d6-7664-53~
## # ... with 51 more variables: file_type <chr>, file_name <chr>,
## #   file_format <chr>, read_index <lgl>, file_size <dbl>, file_uuid <chr>,
## #   file_version <dttm>, file_crc32c <chr>, file_sha256 <chr>,
## #   file_content_type <chr>, file_drs_uri <chr>, file_url <chr>,
## #   cell_suspension.provenance.document_id <chr>,
## #   cell_suspension.biomaterial_core.biomaterial_id <chr>,
## #   cell_suspension.estimated_cell_count <lgl>, ...

## what specimen organs are represented in these files?
manifest_tibble |>
    dplyr::count(specimen_from_organism.organ)
## # A tibble: 4 x 2
##   specimen_from_organism.organ     n
##   <chr>                        <int>
## 1 blood                            5
## 2 hematopoietic system             5
## 3 lung                             5
## 4 mediastinal lymph node           5

4 Example: Using manifest data to select files

manifest_tibble
## # A tibble: 20 x 56
##    source_id   source_spec    bundle_uuid  bundle_version      file_document_id 
##    <chr>       <chr>          <chr>        <dttm>              <chr>            
##  1 e2464476-c~ tdr:tdr-fp-c3~ b593b66a-d2~ 2020-02-03 01:00:00 131ea511-25f7-58~
##  2 e2464476-c~ tdr:tdr-fp-c3~ 5a63dd0b-52~ 2021-02-02 23:50:00 1bb375a5-d22b-59~
##  3 e2464476-c~ tdr:tdr-fp-c3~ 40733888-3b~ 2021-02-02 23:55:00 1f8ff0fa-6892-5e~
##  4 e2464476-c~ tdr:tdr-fp-c3~ 1a41ebe6-ee~ 2021-02-02 23:50:00 2fffe225-ba6c-59~
##  5 e2464476-c~ tdr:tdr-fp-c3~ c12a6ca2-32~ 2021-02-02 23:50:00 31aa5a18-2a4e-54~
##  6 e2464476-c~ tdr:tdr-fp-c3~ f58d690c-bb~ 2021-02-02 23:50:00 48eea299-8823-5a~
##  7 e2464476-c~ tdr:tdr-fp-c3~ 21c4e2de-ec~ 2021-02-02 23:50:00 51458973-404c-58~
##  8 e2464476-c~ tdr:tdr-fp-c3~ 50620c50-23~ 2021-02-02 23:50:00 5bbebef4-9b14-50~
##  9 e2464476-c~ tdr:tdr-fp-c3~ e3ecdfc2-44~ 2021-02-02 23:55:00 5bc232f2-b77c-52~
## 10 e2464476-c~ tdr:tdr-fp-c3~ ae338c4e-65~ 2021-02-02 23:50:00 6326b602-0f63-54~
## 11 e2464476-c~ tdr:tdr-fp-c3~ d62c4599-47~ 2020-02-03 01:00:00 7848d80b-6b1d-56~
## 12 e2464476-c~ tdr:tdr-fp-c3~ 81df106e-e7~ 2021-02-02 23:55:00 9f8bc032-6276-57~
## 13 e2464476-c~ tdr:tdr-fp-c3~ 2838323c-cd~ 2020-02-03 01:00:00 b98cfaac-64f5-59~
## 14 e2464476-c~ tdr:tdr-fp-c3~ c3f672ad-e6~ 2021-02-02 23:50:00 bf7751ae-ac9d-5b~
## 15 e2464476-c~ tdr:tdr-fp-c3~ a9c90392-ca~ 2020-02-03 01:00:00 c7b6470c-e2f0-51~
## 16 e2464476-c~ tdr:tdr-fp-c3~ 9d0f5cd1-0e~ 2020-02-03 01:00:00 d0b95f2c-98ae-58~
## 17 e2464476-c~ tdr:tdr-fp-c3~ 59de15e1-f5~ 2021-02-02 23:50:00 d18759a6-2a95-5d~
## 18 e2464476-c~ tdr:tdr-fp-c3~ 54fb0e25-57~ 2021-02-02 23:55:00 dfd9905b-d6c9-5a~
## 19 e2464476-c~ tdr:tdr-fp-c3~ 7516565a-e8~ 2021-02-02 23:55:00 e07ca731-b20a-5b~
## 20 e2464476-c~ tdr:tdr-fp-c3~ 8e850d2d-0b~ 2021-02-02 23:50:00 fd41f3d6-7664-53~
## # ... with 51 more variables: file_type <chr>, file_name <chr>,
## #   file_format <chr>, read_index <lgl>, file_size <dbl>, file_uuid <chr>,
## #   file_version <dttm>, file_crc32c <chr>, file_sha256 <chr>,
## #   file_content_type <chr>, file_drs_uri <chr>, file_url <chr>,
## #   cell_suspension.provenance.document_id <chr>,
## #   cell_suspension.biomaterial_core.biomaterial_id <chr>,
## #   cell_suspension.estimated_cell_count <lgl>, ...
file_uuid <- "24a8a323-7ecd-504e-a253-b0e0892dd730"
file_filter <- hca::filters(
    fileId = list(is = file_uuid)
)

file_tbl <- hca::files(filters = file_filter)

file_tbl
## # A tibble: 1 x 8
##   fileId   name    fileFormat    size version projectTitle   projectId  url     
##   <chr>    <chr>   <chr>        <int> <chr>   <chr>          <chr>      <chr>   
## 1 24a8a32~ t-cell~ loom        3.90e8 2021-0~ A single-cell~ 4a95101c-~ https:/~
file_location <-
    file_tbl |>
    hca::files_download()
file_location
##                    24a8a323-7ecd-504e-a253-b0e0892dd730-2021-02-11T19:00:05.000000Z 
## "C:\\Users\\biocbuild\\AppData\\Local/R/cache/R/hca/236846364c88_236846364c88.loom"
loom <- LoomExperiment::import(file_location)
metadata(loom) |>
    dplyr::glimpse()
## List of 15
##  $ last_modified                                             : chr "20210211T185949.186062Z"
##  $ CreationDate                                              : chr "20210211T185658.758915Z"
##  $ LOOM_SPEC_VERSION                                         : chr "3.0.0"
##  $ donor_organism.genus_species                              : chr "Homo sapiens"
##  $ expression_data_type                                      : chr "exonic"
##  $ input_id                                                  : chr "58a18a4c-5423-4c59-9b3c-50b7f30b1ca5, c763f679-e13d-4f81-844f-c2c80fc90f46, c76d90b8-c190-4c58-b9bc-b31f586ec7f"| __truncated__
##  $ input_id_metadata_field                                   : chr "sequencing_process.provenance.document_id"
##  $ input_name                                                : chr "PP012_suspension, PP003_suspension, PP004_suspension, PP011_suspension"
##  $ input_name_metadata_field                                 : chr "sequencing_input.biomaterial_core.biomaterial_id"
##  $ library_preparation_protocol.library_construction_approach: chr "10X v2 sequencing"
##  $ optimus_output_schema_version                             : chr "1.0.0"
##  $ pipeline_version                                          : chr "Optimus_v4.2.2"
##  $ project.project_core.project_name                         : chr "HumanTissueTcellActivation"
##  $ project.provenance.document_id                            : chr "4a95101c-9ffc-4f30-a809-f04518a23803"
##  $ specimen_from_organism.organ                              : chr "hematopoietic system"
colData(loom) |>
    dplyr::as_tibble() |>
    dplyr::glimpse()
## Rows: 91,713
## Columns: 43
## $ CellID                                                 <chr> "GCTTCCATCACCGT~
## $ antisense_reads                                        <int> 0, 0, 0, 0, 0, ~
## $ cell_barcode_fraction_bases_above_30_mean              <dbl> 0.9846281, 0.98~
## $ cell_barcode_fraction_bases_above_30_variance          <dbl> 0.003249023, 0.~
## $ cell_names                                             <chr> "GCTTCCATCACCGT~
## $ duplicate_reads                                        <int> 0, 0, 0, 0, 0, ~
## $ emptydrops_FDR                                         <dbl> 1.000000000, 0.~
## $ emptydrops_IsCell                                      <raw> 00, 01, 00, 00,~
## $ emptydrops_Limited                                     <raw> 00, 01, 00, 00,~
## $ emptydrops_LogProb                                     <dbl> -689.6831, -120~
## $ emptydrops_PValue                                      <dbl> 0.91840816, 0.0~
## $ emptydrops_Total                                       <int> 255, 16705, 681~
## $ fragments_per_molecule                                 <dbl> 1.693252, 8.453~
## $ fragments_with_single_read_evidence                    <int> 504, 139828, 58~
## $ genes_detected_multiple_observations                   <int> 82, 2873, 1552,~
## $ genomic_read_quality_mean                              <dbl> 36.62988, 36.87~
## $ genomic_read_quality_variance                          <dbl> 25.99015, 20.19~
## $ genomic_reads_fraction_bases_quality_above_30_mean     <dbl> 0.8584288, 0.86~
## $ genomic_reads_fraction_bases_quality_above_30_variance <dbl> 0.03981779, 0.0~
## $ input_id                                               <chr> "58a18a4c-5423-~
## $ molecule_barcode_fraction_bases_above_30_mean          <dbl> 0.9820324, 0.98~
## $ molecule_barcode_fraction_bases_above_30_variance      <dbl> 0.005782884, 0.~
## $ molecules_with_single_read_evidence                    <int> 276, 5028, 2041~
## $ n_fragments                                            <int> 552, 202060, 84~
## $ n_genes                                                <int> 227, 3381, 1826~
## $ n_mitochondrial_genes                                  <int> 5, 22, 17, 5, 2~
## $ n_mitochondrial_molecules                              <int> 8, 3528, 2928, ~
## $ n_molecules                                            <int> 326, 23902, 998~
## $ n_reads                                                <int> 679, 341669, 13~
## $ noise_reads                                            <int> 0, 0, 0, 0, 0, ~
## $ pct_mitochondrial_molecules                            <dbl> 1.1782032, 1.03~
## $ perfect_cell_barcodes                                  <int> 667, 336674, 13~
## $ perfect_molecule_barcodes                              <int> 384, 227854, 89~
## $ reads_mapped_exonic                                    <int> 343, 210716, 84~
## $ reads_mapped_intergenic                                <int> 39, 19439, 8042~
## $ reads_mapped_intronic                                  <int> 175, 58833, 276~
## $ reads_mapped_multiple                                  <int> 162, 90968, 365~
## $ reads_mapped_too_many_loci                             <int> 0, 0, 0, 0, 0, ~
## $ reads_mapped_uniquely                                  <int> 450, 227309, 93~
## $ reads_mapped_utr                                       <int> 55, 29289, 1039~
## $ reads_per_fragment                                     <dbl> 1.230072, 1.690~
## $ reads_unmapped                                         <int> 67, 23392, 9340~
## $ spliced_reads                                          <int> 99, 73817, 2987~

5 Example: Using manifest data to annotate a .loom file

The function optimus_loom_annotation() takes in the file path of a .loom file generated by the Optimus pipeline and returns a LoomExperiment object whose colData has been annotated with additional specimen data extracted from a manifest.

annotated_loom <- optimus_loom_annotation(file_location)
annotated_loom
## class: SingleCellLoomExperiment 
## dim: 58347 91713 
## metadata(16): last_modified CreationDate ...
##   specimen_from_organism.organ manifest
## assays(1): matrix
## rownames: NULL
## rowData names(29): Gene antisense_reads ... reads_per_molecule
##   spliced_reads
## colnames: NULL
## colData names(98): input_id CellID ...
##   sequencing_input.biomaterial_core.biomaterial_id
##   sequencing_input_type
## reducedDimNames(0):
## mainExpName: NULL
## altExpNames(0):
## rowGraphs(0): NULL
## colGraphs(0): NULL


## new metadata
setdiff(
    names(metadata(annotated_loom)),
    names(metadata(loom))
)
## [1] "manifest"
metadata(annotated_loom)$manifest
## # A tibble: 4 x 56
##   source_id   source_spec     bundle_uuid  bundle_version      file_document_id 
##   <chr>       <chr>           <chr>        <dttm>              <chr>            
## 1 e2464476-c~ tdr:tdr-fp-c31~ e3ecdfc2-44~ 2021-02-02 23:55:00 5bc232f2-b77c-52~
## 2 e2464476-c~ tdr:tdr-fp-c31~ 81df106e-e7~ 2021-02-02 23:55:00 9f8bc032-6276-57~
## 3 e2464476-c~ tdr:tdr-fp-c31~ 54fb0e25-57~ 2021-02-02 23:55:00 dfd9905b-d6c9-5a~
## 4 e2464476-c~ tdr:tdr-fp-c31~ 7516565a-e8~ 2021-02-02 23:55:00 e07ca731-b20a-5b~
## # ... with 51 more variables: file_type <chr>, file_name <chr>,
## #   file_format <chr>, read_index <chr>, file_size <dbl>, file_uuid <chr>,
## #   file_version <dttm>, file_crc32c <chr>, file_sha256 <chr>,
## #   file_content_type <chr>, file_drs_uri <chr>, file_url <chr>,
## #   cell_suspension.provenance.document_id <chr>,
## #   cell_suspension.biomaterial_core.biomaterial_id <chr>,
## #   cell_suspension.estimated_cell_count <lgl>, ...

## new colData columns
setdiff(
    names(colData(annotated_loom)),
    names(colData(loom))
)
##  [1] "source_id"                                                      
##  [2] "source_spec"                                                    
##  [3] "bundle_uuid"                                                    
##  [4] "bundle_version"                                                 
##  [5] "file_document_id"                                               
##  [6] "file_type"                                                      
##  [7] "file_name"                                                      
##  [8] "file_format"                                                    
##  [9] "read_index"                                                     
## [10] "file_size"                                                      
## [11] "file_uuid"                                                      
## [12] "file_version"                                                   
## [13] "file_crc32c"                                                    
## [14] "file_sha256"                                                    
## [15] "file_content_type"                                              
## [16] "file_drs_uri"                                                   
## [17] "file_url"                                                       
## [18] "cell_suspension.provenance.document_id"                         
## [19] "cell_suspension.biomaterial_core.biomaterial_id"                
## [20] "cell_suspension.estimated_cell_count"                           
## [21] "cell_suspension.selected_cell_type"                             
## [22] "sequencing_protocol.instrument_manufacturer_model"              
## [23] "sequencing_protocol.paired_end"                                 
## [24] "library_preparation_protocol.library_construction_approach"     
## [25] "library_preparation_protocol.nucleic_acid_source"               
## [26] "project.provenance.document_id"                                 
## [27] "project.contributors.institution"                               
## [28] "project.contributors.laboratory"                                
## [29] "project.project_core.project_short_name"                        
## [30] "project.project_core.project_title"                             
## [31] "project.estimated_cell_count"                                   
## [32] "specimen_from_organism.provenance.document_id"                  
## [33] "specimen_from_organism.diseases"                                
## [34] "specimen_from_organism.organ"                                   
## [35] "specimen_from_organism.organ_part"                              
## [36] "specimen_from_organism.preservation_storage.preservation_method"
## [37] "donor_organism.sex"                                             
## [38] "donor_organism.biomaterial_core.biomaterial_id"                 
## [39] "donor_organism.provenance.document_id"                          
## [40] "donor_organism.genus_species"                                   
## [41] "donor_organism.development_stage"                               
## [42] "donor_organism.diseases"                                        
## [43] "donor_organism.organism_age"                                    
## [44] "cell_line.provenance.document_id"                               
## [45] "cell_line.biomaterial_core.biomaterial_id"                      
## [46] "organoid.provenance.document_id"                                
## [47] "organoid.biomaterial_core.biomaterial_id"                       
## [48] "organoid.model_organ"                                           
## [49] "organoid.model_organ_part"                                      
## [50] "_entity_type"                                                   
## [51] "sample.provenance.document_id"                                  
## [52] "sample.biomaterial_core.biomaterial_id"                         
## [53] "sequencing_input.provenance.document_id"                        
## [54] "sequencing_input.biomaterial_core.biomaterial_id"               
## [55] "sequencing_input_type"

6 Session info

sessionInfo()
## R version 4.1.2 (2021-11-01)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows Server 2012 R2 x64 (build 9600)
## 
## Matrix products: default
## 
## locale:
## [1] LC_COLLATE=C                          
## [2] LC_CTYPE=English_United States.1252   
## [3] LC_MONETARY=English_United States.1252
## [4] LC_NUMERIC=C                          
## [5] LC_TIME=English_United States.1252    
## 
## attached base packages:
## [1] stats4    stats     graphics  grDevices utils     datasets  methods  
## [8] base     
## 
## other attached packages:
##  [1] hca_1.2.1                   LoomExperiment_1.12.0      
##  [3] BiocIO_1.4.0                rhdf5_2.38.0               
##  [5] SingleCellExperiment_1.16.0 SummarizedExperiment_1.24.0
##  [7] Biobase_2.54.0              GenomicRanges_1.46.1       
##  [9] GenomeInfoDb_1.30.0         IRanges_2.28.0             
## [11] S4Vectors_0.32.3            BiocGenerics_0.40.0        
## [13] MatrixGenerics_1.6.0        matrixStats_0.61.0         
## [15] dplyr_1.0.7                 BiocStyle_2.22.0           
## 
## loaded via a namespace (and not attached):
##  [1] httr_1.4.2             tidyr_1.1.4            sass_0.4.0            
##  [4] vroom_1.5.7            bit64_4.0.5            jsonlite_1.7.2        
##  [7] bslib_0.3.1            assertthat_0.2.1       BiocManager_1.30.16   
## [10] BiocFileCache_2.2.0    blob_1.2.2             GenomeInfoDbData_1.2.7
## [13] yaml_2.2.1             pillar_1.6.4           RSQLite_2.2.9         
## [16] lattice_0.20-45        glue_1.5.1             digest_0.6.29         
## [19] XVector_0.34.0         htmltools_0.5.2        Matrix_1.4-0          
## [22] pkgconfig_2.0.3        bookdown_0.24          zlibbioc_1.40.0       
## [25] purrr_0.3.4            HDF5Array_1.22.1       tzdb_0.2.0            
## [28] tibble_3.1.6           generics_0.1.1         ellipsis_0.3.2        
## [31] withr_2.4.3            cachem_1.0.6           cli_3.1.0             
## [34] magrittr_2.0.1         crayon_1.4.2           memoise_2.0.1         
## [37] evaluate_0.14          fansi_0.5.0            tools_4.1.2           
## [40] hms_1.1.1              formatR_1.11           lifecycle_1.0.1       
## [43] stringr_1.4.0          Rhdf5lib_1.16.0        DelayedArray_0.20.0   
## [46] lambda.r_1.2.4         compiler_4.1.2         jquerylib_0.1.4       
## [49] rlang_0.4.12           futile.logger_1.4.3    grid_4.1.2            
## [52] RCurl_1.98-1.5         rhdf5filters_1.6.0     rappdirs_0.3.3        
## [55] bitops_1.0-7           rmarkdown_2.11         DBI_1.1.1             
## [58] curl_4.3.2             R6_2.5.1               knitr_1.36            
## [61] fastmap_1.1.0          bit_4.0.4              utf8_1.2.2            
## [64] filelock_1.0.2         futile.options_1.0.1   readr_2.1.1           
## [67] stringi_1.7.6          parallel_4.1.2         Rcpp_1.0.7            
## [70] vctrs_0.3.8            dbplyr_2.1.1           tidyselect_1.1.1      
## [73] xfun_0.28