Chapter 30 Grun human pancreas (CEL-seq2)

30.1 Introduction

This workflow performs an analysis of the Grun et al. (2016) CEL-seq2 dataset consisting of human pancreas cells from various donors.

30.3 Quality control

This dataset lacks mitochondrial genes so we will do without them for quality control. We compute the median and MAD while blocking on the donor; for donors where the assumption of a majority of high-quality cells seems to be violated (Figure 30.1), we compute an appropriate threshold using the other donors as specified in the subset= argument.

Distribution of each QC metric across cells from each donor of the Grun pancreas dataset. Each point represents a cell and is colored according to whether that cell was discarded.

Figure 30.1: Distribution of each QC metric across cells from each donor of the Grun pancreas dataset. Each point represents a cell and is colored according to whether that cell was discarded.

##              low_lib_size            low_n_features high_altexps_ERCC_percent 
##                       450                       512                       606 
##                   discard 
##                       665

30.4 Normalization

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.099   0.511   0.796   1.000   1.231   8.838
Relationship between the library size factors and the deconvolution size factors in the Grun pancreas dataset.

Figure 30.2: Relationship between the library size factors and the deconvolution size factors in the Grun pancreas dataset.

30.5 Variance modelling

We block on a combined plate and donor factor.

We examine the number of cells in each level of the blocking factor.

## block
##                  CD13+ sorted cells_D17       CD24+ CD44+ live sorted cells_D17 
##                                      86                                      87 
##                  CD63+ sorted cells_D10                TGFBR3+ sorted cells_D17 
##                                      41                                      90 
## exocrine fraction, live sorted cells_D2 exocrine fraction, live sorted cells_D3 
##                                      82                                       7 
##        live sorted cells, library 1_D10        live sorted cells, library 1_D17 
##                                      33                                      88 
##         live sorted cells, library 1_D3         live sorted cells, library 1_D7 
##                                      24                                      85 
##        live sorted cells, library 2_D10        live sorted cells, library 2_D17 
##                                      35                                      83 
##         live sorted cells, library 2_D3         live sorted cells, library 2_D7 
##                                      27                                      84 
##         live sorted cells, library 3_D3         live sorted cells, library 3_D7 
##                                      16                                      83 
##         live sorted cells, library 4_D3         live sorted cells, library 4_D7 
##                                      29                                      83
Per-gene variance as a function of the mean for the log-expression values in the Grun pancreas dataset. Each point represents a gene (black) with the mean-variance trend (blue) fitted to the spike-in transcripts (red) separately for each donor.

Figure 25.4: Per-gene variance as a function of the mean for the log-expression values in the Grun pancreas dataset. Each point represents a gene (black) with the mean-variance trend (blue) fitted to the spike-in transcripts (red) separately for each donor.

30.6 Data integration

##           D10      D17       D2      D3      D7
## [1,] 0.030626 0.032123 0.000000 0.00000 0.00000
## [2,] 0.007151 0.011372 0.036091 0.00000 0.00000
## [3,] 0.003905 0.005135 0.007729 0.05239 0.00000
## [4,] 0.011862 0.014643 0.013594 0.01235 0.05387

30.8 Clustering

##        Donor
## Cluster D10 D17  D2  D3  D7
##      1   32  70  31  80  28
##      2   14  34   3   2  67
##      3   12  71  31   2  71
##      4    5   4   2   4   2
##      5   11 119   0   0  55
##      6    2   8   3   3   6
##      7    3  40   0   0  10
##      8    1   9   0   0   7
##      9   15  36  12  11  45
##      10   5  13   0   0  10
##      11   4  13   0   0   1
##      12   5  17   0   1  33
Obligatory $t$-SNE plots of the Grun pancreas dataset. Each point represents a cell that is colored by cluster (left) or batch (right).

Figure 30.3: Obligatory \(t\)-SNE plots of the Grun pancreas dataset. Each point represents a cell that is colored by cluster (left) or batch (right).

Session Info

R version 4.0.3 (2020-10-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.1 LTS

Matrix products: default
BLAS:   /home/biocbuild/bbs-3.12-bioc/R/lib/libRblas.so
LAPACK: /home/biocbuild/bbs-3.12-bioc/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        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       

attached base packages:
[1] parallel  stats4    stats     graphics  grDevices utils     datasets 
[8] methods   base     

other attached packages:
 [1] batchelor_1.6.0             scran_1.18.0               
 [3] scater_1.18.0               ggplot2_3.3.2              
 [5] org.Hs.eg.db_3.12.0         AnnotationDbi_1.52.0       
 [7] scRNAseq_2.4.0              SingleCellExperiment_1.12.0
 [9] SummarizedExperiment_1.20.0 Biobase_2.50.0             
[11] GenomicRanges_1.42.0        GenomeInfoDb_1.26.0        
[13] IRanges_2.24.0              S4Vectors_0.28.0           
[15] BiocGenerics_0.36.0         MatrixGenerics_1.2.0       
[17] matrixStats_0.57.0          BiocStyle_2.18.0           
[19] rebook_1.0.0               

loaded via a namespace (and not attached):
  [1] Rtsne_0.15                    ggbeeswarm_0.6.0             
  [3] colorspace_1.4-1              ellipsis_0.3.1               
  [5] scuttle_1.0.0                 bluster_1.0.0                
  [7] XVector_0.30.0                BiocNeighbors_1.8.0          
  [9] farver_2.0.3                  bit64_4.0.5                  
 [11] interactiveDisplayBase_1.28.0 xml2_1.3.2                   
 [13] codetools_0.2-16              sparseMatrixStats_1.2.0      
 [15] knitr_1.30                    Rsamtools_2.6.0              
 [17] ResidualMatrix_1.0.0          dbplyr_1.4.4                 
 [19] graph_1.68.0                  shiny_1.5.0                  
 [21] BiocManager_1.30.10           compiler_4.0.3               
 [23] httr_1.4.2                    dqrng_0.2.1                  
 [25] assertthat_0.2.1              Matrix_1.2-18                
 [27] fastmap_1.0.1                 lazyeval_0.2.2               
 [29] limma_3.46.0                  later_1.1.0.1                
 [31] BiocSingular_1.6.0            htmltools_0.5.0              
 [33] prettyunits_1.1.1             tools_4.0.3                  
 [35] igraph_1.2.6                  rsvd_1.0.3                   
 [37] gtable_0.3.0                  glue_1.4.2                   
 [39] GenomeInfoDbData_1.2.4        dplyr_1.0.2                  
 [41] rappdirs_0.3.1                Rcpp_1.0.5                   
 [43] vctrs_0.3.4                   Biostrings_2.58.0            
 [45] ExperimentHub_1.16.0          rtracklayer_1.50.0           
 [47] DelayedMatrixStats_1.12.0     xfun_0.19                    
 [49] stringr_1.4.0                 ps_1.4.0                     
 [51] beachmat_2.6.0                mime_0.9                     
 [53] lifecycle_0.2.0               irlba_2.3.3                  
 [55] ensembldb_2.14.0              statmod_1.4.35               
 [57] XML_3.99-0.5                  edgeR_3.32.0                 
 [59] AnnotationHub_2.22.0          zlibbioc_1.36.0              
 [61] scales_1.1.1                  hms_0.5.3                    
 [63] promises_1.1.1                ProtGenerics_1.22.0          
 [65] AnnotationFilter_1.14.0       yaml_2.2.1                   
 [67] curl_4.3                      gridExtra_2.3                
 [69] memoise_1.1.0                 biomaRt_2.46.0               
 [71] stringi_1.5.3                 RSQLite_2.2.1                
 [73] highr_0.8                     BiocVersion_3.12.0           
 [75] GenomicFeatures_1.42.0        BiocParallel_1.24.0          
 [77] rlang_0.4.8                   pkgconfig_2.0.3              
 [79] bitops_1.0-6                  evaluate_0.14                
 [81] lattice_0.20-41               purrr_0.3.4                  
 [83] labeling_0.4.2                GenomicAlignments_1.26.0     
 [85] CodeDepends_0.6.5             cowplot_1.1.0                
 [87] bit_4.0.4                     processx_3.4.4               
 [89] tidyselect_1.1.0              magrittr_1.5                 
 [91] bookdown_0.21                 R6_2.5.0                     
 [93] generics_0.1.0                DelayedArray_0.16.0          
 [95] DBI_1.1.0                     pillar_1.4.6                 
 [97] withr_2.3.0                   RCurl_1.98-1.2               
 [99] tibble_3.0.4                  crayon_1.3.4                 
[101] BiocFileCache_1.14.0          rmarkdown_2.5                
[103] viridis_0.5.1                 progress_1.2.2               
[105] locfit_1.5-9.4                grid_4.0.3                   
[107] blob_1.2.1                    callr_3.5.1                  
[109] digest_0.6.27                 xtable_1.8-4                 
[111] httpuv_1.5.4                  openssl_1.4.3                
[113] munsell_0.5.0                 viridisLite_0.3.0            
[115] beeswarm_0.2.3                vipor_0.4.5                  
[117] askpass_1.1                  

Bibliography

Grun, D., M. J. Muraro, J. C. Boisset, K. Wiebrands, A. Lyubimova, G. Dharmadhikari, M. van den Born, et al. 2016. “De Novo Prediction of Stem Cell Identity using Single-Cell Transcriptome Data.” Cell Stem Cell 19 (2): 266–77.