load("Report2.Rdata")

1 Summary Table

Sequence files below are set as inputs of the pipeline.

Case files:

Control files:

Summerized infomation on sequence files has been shown showed below. You can see details in later sections

Item Case Control Reference
Sequence Files Type paired end (PE) paired end (PE) SE / PE
Original total reads 0.0M 0.0M
– Reads after adapter removing (ratio) 0.0M (100.00%) 0.0M (100.00%) >99%
– – Total mapped reads (ratio of original reads) 0.0M (100.00%) 0.0M (100.00%) >95%
– – – Unique locations mapped uniquely by reads 0.0M 0.0M
– – – Uniquely mappable reads 0.0M 0.0M
– – – Non-Redundant Fraction (NRF) 1.00 1.00 >0.7
– – – Locations with only 1 reads mapping uniquely 0.0M 0.0M
– – – Locations with only 2 reads mapping uniquely 0.0M 0.0M
– – – PCR Bottlenecking Coefficients 1 (PBC1) 1.00 1.00 >0.7
– – – PCR Bottlenecking Coefficients 2 (PBC2) Inf Inf >3
– – – Non-mitochondrial reads (ratio) 0.0M (100.00%) 0.0M (100.00%) >70%
– – – – Unique mapped reads (ratio) 0.0M (93.09%) 0.0M (92.86%)
– – – – – Duplicate removed reads (final for use) 0.0M (93.09%) 0.0M (92.86%) >25M
– – – – – – Nucleosome free reads (<100bp) 0.0M (32.21%) 0.0M (32.35%)
– – – – – – – Total peaks 1263 1228
– – – – – – – Peaks overlaped with union DHS ratio 56.8% 56.6%
– – – – – – – Peaks overlaped with blacklist ratio 0.0% 0.0%
– – – – – – Fraction of reads in peaks (FRiP) 53.8% 53.7%

A nucleosome free region (NFR) must be present. A mononucleosome peak must be present in the fragment length distribution. These are reads that span a single nucleosome, so they are longer than 147 bp but shorter than 147*2 bp. Good ATAC-seq datasets have reads that span nucleosomes (which allows for calling nucleosome positions in addition to open regions of chromatin).

  • Case

  • Control

2 Sequence Statistics

2.1 FastQC

Quality control for the sequence data

Click to Visit Report for case

Click to Visit Report for control

2.2 Remove adapter

The adapter sequence are shown below. For paired end reads, if adapters were not setted, the adapters below are identified by AdapterRemoval.

  • Adapter for case
Item Value
adapter1 CTGTCTCTTATACACATCTCCGAGCCCACANNNCATANG
adapter2 CTGTCTCTTATACACATCTGACGCTNTTGTCCTTCAAAG
  • Adapter for control
Item Value
adapter1 CTGTCTCTTATACACATCTCCGAGCCAATGGCGTGA
adapter2 CTGTCTCTTATACACATCTGACGCTGTTTCTTTTTT

The statistic of adapter removing are show below.

Items Case Control
Total number of read pairs 25000 25000
Number of unaligned read pairs 13581 13493
Number of well aligned read pairs 11419 11507
Number of discarded mate 1 reads 0 0
Number of singleton mate 1 reads 0 0
Number of discarded mate 2 reads 0 0
Number of singleton mate 2 reads 0 0
Number of reads with adapters[1] 5906 5846
Number of retained reads 50000 50000
Number of retained nucleotides 2451360 2449920
Average length of retained reads 49.0272 48.9984

For detail, you can visit Website of AdapterRemoval on Github.

3 Reads Alignment Statistics

3.1 Bowtie2 alignment log

  • For case
## [1] "25000 reads; of these:"                                
## [2] "  25000 (100.00%) were paired; of these:"              
## [3] "    0 (0.00%) aligned concordantly 0 times"            
## [4] "    23276 (93.10%) aligned concordantly exactly 1 time"
## [5] "    1724 (6.90%) aligned concordantly >1 times"        
## [6] "100.00% overall alignment rate"
  • For control
## [1] "25000 reads; of these:"                                
## [2] "  25000 (100.00%) were paired; of these:"              
## [3] "    0 (0.00%) aligned concordantly 0 times"            
## [4] "    23222 (92.89%) aligned concordantly exactly 1 time"
## [5] "    1778 (7.11%) aligned concordantly >1 times"        
## [6] "100.00% overall alignment rate"

3.2 Library complexity

Items Case Control Reference
Total mapped reads (ratio of original reads) 0.0M (25000) 0.0M (25000)
Unique locations mapped uniquely by reads 0.0M (23272) 0.0M (23215)
Uniquely mappable reads 0.0M (23272) 0.0M (23215)
Non-Redundant Fraction (NRF) 1.00 1.00 >0.7
Locations with only 1 reads mapping uniquely 0.0M (23272) 0.0M (23215)
Locations with only 2 reads mapping uniquely 0.0M (0) 0.0M (0)
PCR Bottlenecking Coefficients 1 (PBC1) 1.00 1.00 >0.7
PCR Bottlenecking Coefficients 2 (PBC2) NA NA >3
The annotation you can see in section 1.

3.3 Filtering statistics

Item Case Control Reference
Original total reads 0.0M (25000) 0.0M (25000)
Reads after adapter removing (ratio) 0.0M (100.00%, 25000 / 25000) 0.0M (100.00%, 25000 / 25000) >99%
Total mapped reads (ratio of original reads) 0.0M (100.00%, 25000 / 25000) 0.0M (100.00%, 25000 / 25000) >95%
– Non-mitochondrial reads (ratio) 0.0M (100.00%, 25000 / 25000) 0.0M (100.00%, 25000 / 25000) >70%
– – Unique mapped reads (ratio) 0.0M (93.09%, 23272 / 25000) 0.0M (92.86%, 23215 / 25000) >60%
– – – Duplicate removed reads (ratio final for use) 0.0M (93.09%, 23272 / 25000) 0.0M (92.86%, 23215 / 25000) >25M,>60%

3.4 Fragment size distribution

library(ggplot2)
library(stats)
load("Report2.Rdata")

getFsdG1G2 <- function(readsCounts){
       
    
    
    strength<-Mod(fft(readsCounts$counts))/length(readsCounts$counts)
    periodx<-length(readsCounts$counts)/(1:(length(readsCounts$counts)-1))
    strength<-strength[2:length(strength)]
    
    rs1<-as.data.frame(cbind(periodx[periodx<20&periodx>2],strength[periodx<20&periodx>2],0))
    rs2<-as.data.frame(cbind(periodx[periodx<400&periodx>2],strength[periodx<400&periodx>2],1))
    rs<-rbind(rs1,rs2)
    colnames(rs)<-c("period","strength","check")
    
    g1<-ggplot(rs[rs["check"]==0,]) + geom_vline(xintercept = 10.4, linetype=2)+ geom_line(aes(x=period,y=strength),color="Red")+ theme_bw() + theme(panel.grid =element_blank()) + annotate("text", x = 10.4, y = max(rs[rs["check"]==0,2]), label = "10.4bp") +xlab("period") + ylab("strength")+ labs(title = "the Pitch of the DNA Helix") + theme(plot.title = element_text(hjust = 0.5))
    
    g2<-ggplot(rs[rs["check"]==1,]) + geom_vline(xintercept = 186, linetype=2)+ geom_line(aes(x=period,y=strength),color="Red")+ theme_bw() + theme(panel.grid =element_blank()) + annotate("text", x = 186, y = max(rs[rs["check"]==1,2]), label = "186bp") +xlab("period") + ylab("strength")+ labs(title = "Nucleosome") + theme(plot.title = element_text(hjust = 0.5))
    return(list(g1,g2))
}
readsCounts1<-getReportVal(caselist$atacProcs$fragLenDistr,"readsCounts")
readsCounts2<-getReportVal(ctrllist$atacProcs$fragLenDistr,"readsCounts")
ggplot(readsCounts1[1:1000,], aes(length,counts))+geom_path(color="Red")+xlab("Fragment length (bp)")+ylab("Read counts") + theme_bw() + theme(panel.grid =element_blank()) + labs(title = "Fragment Length Distribution") + theme(plot.title = element_text(hjust = 0.5))

ggplot(readsCounts2[1:1000,], aes(length,counts))+geom_path(color="Red")+xlab("Fragment length (bp)")+ylab("Read counts") + theme_bw() + theme(panel.grid =element_blank()) + labs(title = "Fragment Length Distribution") + theme(plot.title = element_text(hjust = 0.5))

g112<-getFsdG1G2(readsCounts1)
g212<-getFsdG1G2(readsCounts2)

library(gridExtra)
grid.arrange(g112[[1]], g212[[1]],ncol=2)

grid.arrange(g112[[2]], g212[[2]],ncol=2)

3.5 TSS enrichment

The nucleosome free reads (<100bp) and monnucleosome span reads (180~247bp) enrichment around transcription starting site (TSS) are shown below.

library(ggplot2)
library(gridExtra)
load("Report2.Rdata")
df<-getReportVal(caselist$atacProcs$tssqc100,"tss")
g11<-ggplot(df,aes(pos,counts))+geom_line()+ geom_vline(xintercept = 0, linetype=2)+xlab("upstream<-TSS->downstream")+ylab("reads count")+theme_bw() + theme(panel.grid =element_blank()) + labs(title = "Nucleosome Free Reads") + theme(plot.title = element_text(hjust = 0.5))
df<-getReportVal(caselist$atacProcs$tssqc180_247,"tss")
g12<-ggplot(df,aes(pos,counts))+geom_line()+ geom_vline(xintercept = 0, linetype=2)+xlab("upstream<-TSS->downstream")+ylab("reads count")+theme_bw() + theme(panel.grid =element_blank()) + labs(title = "Monnucleosome Span Reads") + theme(plot.title = element_text(hjust = 0.5))

df<-getReportVal(caselist$atacProcs$tssqc100,"tss")
g21<-ggplot(df,aes(pos,counts))+geom_line()+ geom_vline(xintercept = 0, linetype=2)+xlab("upstream<-TSS->downstream")+ylab("reads count")+theme_bw() + theme(panel.grid =element_blank()) + labs(title = "Nucleosome Free Reads") + theme(plot.title = element_text(hjust = 0.5))
df<-getReportVal(caselist$atacProcs$tssqc180_247,"tss")
g22<-ggplot(df,aes(pos,counts))+geom_line()+ geom_vline(xintercept = 0, linetype=2)+xlab("upstream<-TSS->downstream")+ylab("reads count")+theme_bw() + theme(panel.grid =element_blank()) + labs(title = "Monnucleosome Span Reads") + theme(plot.title = element_text(hjust = 0.5))
grid.arrange(g11, g21, ncol=2)

grid.arrange(g12, g22, ncol=2)

4 Peak Statistics

4.1 Blacklist ratio

Items Case Control
Total peaks 1263 1228
Blacklist regions 0 0
Ratio 0.00 0.00

4.2 DHS ratio

Items Case Control
Total peaks 1263 1228
DHS regions 717 695
Ratio 0.57 0.57

4.3 Fraction of reads in peaks (FRiP)

Items Case Control
The number of reads in peak 4031 4030
The number of total reads 7497 7511
The number of total peaks 1263 1228
FRiP 0.54 0.54

4.4 Peak annotation

  • For case

  • For control

5 Case Control Peak Compare

The following is the peak comparation result for case and control.

The total peaks in case are 1263, specific peaks in case are 886.

The total peaks in control are 1228, specific peaks in control are 850.

The overlap peaks are merged to 360 peaks.

6 GO Analysis

Gene ontology analysis for all genes around specific peak regions of case and control.

6.1 Significant GO terms of genes associated with case specific peaks

Click to Visit Case Differential Go Analysis file

6.2 Significant GO terms of genes associated with control specific peaks

Click to Visit Ctrl Differential Go Analysis file

7 Motif Enrichment Analysis

This function takes case and control specific peaks as foreground respectively, overlap peaks between case and control as background.

7.1 Significant motifs of case specific peaks

motif motif length p_value
CTCF 19 1

7.2 Significant motifs of control specific peaks

motif motif length p_value
CTCF 19 0

8 Genomic Footprint

The following is the footprint for motif occurance of case&control peaks.

For all footprint of case sample, The absolute path is /home/zwei/esATAC_test/pkgCC/esATAC_pipeline/intermediate_results/Footprint_Case_data/FP_PDF_Case_data.

For all footprint of control sample, The absolute path is /home/zwei/esATAC_test/pkgCC/esATAC_pipeline/intermediate_results/Footprint_Control_data/FP_PDF_Control_data.

The following is the footprint for motif occurance of case&control specific peaks.

For all footprint of case specific, The absolute path is /home/zwei/esATAC_test/pkgCC/esATAC_pipeline/intermediate_results/Footprint_Case_specific/FP_PDF_Case_specific.

For all footprint of control specific, The absolute path is /home/zwei/esATAC_test/pkgCC/esATAC_pipeline/intermediate_results/Footprint_Control_specific/FP_PDF_Control_specific.

9 Annotation of Items in Table

For single end sequencing data, esATAC will counts reads number.

For paired end sequencing data, esATAC will counts read pairs or fragment number.

  • Sequence files type is the type of sequencing data: single end data and paired end data. If paired end reads are stored in one file interleavedly rather than two files, “it is call”interleaved.

  • Original total reads is the sample’s raw total reads (pairs) number.

  • Reads after adapter removing (ratio) is the reads (pairs) number after adapter removing and the percentage of retained reads in original total reads. The larger value shows the better quality.

  • Total mapped reads (ratio)
    is the reads (pairs) number mapped to reference genome and the percentage of mapped reads in original total reads (alignment rate). ENCODE recommend that the alignment rate, or percentage of mapped reads, should be greater than 95%, though values >80% may be acceptable.

  • Unique locations mapped uniquely
    is the number of distinct uniquely mapping reads (i.e. after removing duplicates).

  • Non-Redundant Fraction (NRF) is the value of: Unique locations mapped uniquely (the number of positions in the genome that uniquely mappable reads map to) / the total number of uniquely mappable reads.

\(NRF\) value range Complexity
\(NRF<0.7\) Concerning
\(0.7\le NRF \le 0.9\) Acceptable
\(NRF>0.7\) Ideal
  • Locations with only 1 reads mapping uniquely is the number of genomic locations where exactly one read maps uniquely.

  • Locations with only 2 reads mapping uniquely is the number of genomic locations where two reads map uniquely.

  • PCR Bottlenecking Coefficients 1 (PBC1) is the value of: Locations with only 1 reads mapping uniquely / Unique locations mapped uniquely. ENCODE recommend that PBC1>0.9 for ATAC-seq data.

\(PBC1\) value range Bottlenecking level
\(PBC1<0.7\) Severe
\(0.7\le PBC1 \le 0.9\) Moderate
\(PBC1>0.7\) None
  • PCR Bottlenecking Coefficients 2 (PBC2) is the value of: Locations with only 1 reads mapping uniquely / Locations with only 2 reads mapping uniquely. ENCODE recommend that PBC2>3 for ATAC-seq data.
\(PBC2\) value range Bottlenecking level
\(PBC2<1\) Severe
\(1\le PBC2 \le 3\) Moderate
\(PBC2>3\) None
  • Non-mitochondrial reads (ratio) is the percentage of non-mitochondrial read in total mapped reads. (mitochondrial reads removed).The larger value shows the better quality.

  • Unique mapped reads (ratio) is the percentage of non-mitochondrial unique mapped read in total mapped reads (multi-mapped reads removed). The larger value shows the better quality.

  • Duplicate removed reads (final for use) is the percentage of non-mitochondrial, unique mapped and non-duplicate reads in total mapped reads (duplicate reads removed). These reads are ready to use and storage at final. The larger value shows the better quality.

  • Nucleosome free reads (<100bp) is the nucleosome free reads reads shorter than 100bp for peak calling
  • Total peaks is the number of peak called by using nucleosome free reads (<100bp)
  • Peaks overlaped with union DHS (ratio) is the percentage of called peak overlaped with blacklist. The larger value shows the better quality.

  • Peaks overlaped with blacklist (ratio) is the percentage of called peak overlaped with blacklist. The smaller value shows the better quality.

  • Fraction of reads in peaks (FRiP) is the fraction of nucleosome free reads (<100bp) in peak. The larger value shows the better quality.

10 Session Info

sessionInfo()
## R version 3.4.3 (2017-11-30)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Red Hat Enterprise Linux Server 7.2 (Maipo)
## 
## Matrix products: default
## BLAS: /home/software/R/R-3.4.3/lib64/R/lib/libRblas.so
## LAPACK: /home/software/R/R-3.4.3/lib64/R/lib/libRlapack.so
## 
## locale:
##  [1] LC_CTYPE=en_US.utf8          LC_NUMERIC=C                
##  [3] LC_TIME=en_US.utf8           LC_COLLATE=en_US.utf8       
##  [5] LC_MONETARY=en_US.utf8       LC_MESSAGES=en_US.utf8      
##  [7] LC_PAPER=en_US.utf8          LC_NAME=en_US.utf8          
##  [9] LC_ADDRESS=en_US.utf8        LC_TELEPHONE=en_US.utf8     
## [11] LC_MEASUREMENT=en_US.utf8    LC_IDENTIFICATION=en_US.utf8
## 
## attached base packages:
##  [1] grid      stats4    parallel  methods   stats     graphics  grDevices
##  [8] utils     datasets  base     
## 
## other attached packages:
##  [1] VennDiagram_1.6.18                     
##  [2] futile.logger_1.4.3                    
##  [3] ChIPseeker_1.14.1                      
##  [4] gridExtra_2.3                          
##  [5] ggplot2_2.2.1                          
##  [6] TxDb.Hsapiens.UCSC.hg19.knownGene_3.2.2
##  [7] GenomicFeatures_1.30.3                 
##  [8] org.Hs.eg.db_3.5.0                     
##  [9] AnnotationDbi_1.40.0                   
## [10] BSgenome.Hsapiens.UCSC.hg19_1.4.0      
## [11] BSgenome_1.46.0                        
## [12] rtracklayer_1.38.3                     
## [13] esATAC_1.0.17                          
## [14] ShortRead_1.36.0                       
## [15] GenomicAlignments_1.14.1               
## [16] SummarizedExperiment_1.8.1             
## [17] DelayedArray_0.4.1                     
## [18] matrixStats_0.53.1                     
## [19] Biobase_2.38.0                         
## [20] BiocParallel_1.12.0                    
## [21] Rsamtools_1.30.0                       
## [22] Biostrings_2.46.0                      
## [23] XVector_0.18.0                         
## [24] GenomicRanges_1.30.1                   
## [25] GenomeInfoDb_1.14.0                    
## [26] IRanges_2.12.0                         
## [27] S4Vectors_0.16.0                       
## [28] BiocGenerics_0.24.0                    
## 
## loaded via a namespace (and not attached):
##   [1] backports_1.1.2             fastmatch_1.1-0            
##   [3] corrplot_0.84               VGAM_1.0-5                 
##   [5] plyr_1.8.4                  igraph_1.1.2               
##   [7] lazyeval_0.2.1              splines_3.4.3              
##   [9] gridBase_0.4-7              TFBSTools_1.16.0           
##  [11] digest_0.6.15               BiocInstaller_1.28.0       
##  [13] htmltools_0.3.6             GOSemSim_2.4.1             
##  [15] viridis_0.5.0               GO.db_3.5.0                
##  [17] gdata_2.18.0                magrittr_1.5               
##  [19] memoise_1.1.0               JASPAR2016_1.6.0           
##  [21] readr_1.1.1                 annotate_1.56.1            
##  [23] R.utils_2.6.0               prettyunits_1.0.2          
##  [25] colorspace_1.3-2            blob_1.1.0                 
##  [27] dplyr_0.7.4                 RCurl_1.95-4.10            
##  [29] jsonlite_1.5                bindr_0.1                  
##  [31] TFMPvalue_0.0.6             brew_1.0-6                 
##  [33] glue_1.2.0                  gtable_0.2.0               
##  [35] zlibbioc_1.24.0             UpSetR_1.3.3               
##  [37] Rook_1.1-1                  scales_0.5.0               
##  [39] DOSE_3.4.0                  futile.options_1.0.0       
##  [41] DBI_0.7                     Rcpp_0.12.15               
##  [43] plotrix_3.7                 viridisLite_0.3.0          
##  [45] xtable_1.8-2                progress_1.1.2             
##  [47] bit_1.1-12                  htmlwidgets_1.0            
##  [49] httr_1.3.1                  DiagrammeR_0.9.2           
##  [51] fgsea_1.4.1                 gplots_3.0.1               
##  [53] RColorBrewer_1.1-2          pkgconfig_2.0.1            
##  [55] XML_3.98-1.9                rJava_0.9-9                
##  [57] R.methodsS3_1.7.1           labeling_0.3               
##  [59] rlang_0.1.6                 reshape2_1.4.3             
##  [61] munsell_0.4.3               tools_3.4.3                
##  [63] visNetwork_2.0.3            downloader_0.4             
##  [65] DirichletMultinomial_1.20.0 RSQLite_2.0                
##  [67] evaluate_0.10.1             stringr_1.2.0              
##  [69] yaml_2.1.16                 knitr_1.19                 
##  [71] bit64_0.9-7                 caTools_1.17.1             
##  [73] purrr_0.2.4                 KEGGREST_1.18.1            
##  [75] bindrcpp_0.2                R.oo_1.21.0                
##  [77] poweRlaw_0.70.1             DO.db_2.9                  
##  [79] biomaRt_2.34.2              compiler_3.4.3             
##  [81] rstudioapi_0.7              rgexf_0.15.3               
##  [83] png_0.1-7                   Rbowtie2_1.0.1             
##  [85] tibble_1.4.2                stringi_1.1.6              
##  [87] highr_0.6                   lattice_0.20-35            
##  [89] CNEr_1.14.0                 Matrix_1.2-12              
##  [91] pillar_1.1.0                data.table_1.10.4-3        
##  [93] bitops_1.0-6                qvalue_2.10.0              
##  [95] R6_2.2.2                    latticeExtra_0.6-28        
##  [97] hwriter_1.3.2               RMySQL_0.10.13             
##  [99] KernSmooth_2.23-15          lambda.r_1.2               
## [101] boot_1.3-20                 gtools_3.5.0               
## [103] assertthat_0.2.0            seqLogo_1.44.0             
## [105] rprojroot_1.3-2             GenomeInfoDbData_1.0.0     
## [107] hms_0.4.1                   influenceR_0.1.0           
## [109] clusterProfiler_3.6.0       tidyr_0.8.0                
## [111] rmarkdown_1.8               rvcheck_0.0.9