ChipSeq数据分析R语言做生信NGS

高通量测序数据处理学习记录(七):使用ChIPQC包检查ChIP

2019-01-15  本文已影响5人  面面的徐爷

参考文章

六六
这篇文章的作者看来是详细的观看了ChIPQC manual并且参考了已有文档进行了学习和实践。
Manual见Manual

讨论

问:为什么有了参考文章还要发文呢?
答:因为参考文章只是重现了作者的vignette而已,本人在实战过程中就遇到了无数的问题,花费了一天的时间才完成整个分析(包括重装了R +-+),还在Biostar&Bioconductor forum上发了两篇post:
Question: ChIPQC BiocParallel errors
Question: ChIPQC ERROR with "subscript out of bounds"

分析重现 → 原版pdf

1. 介绍

ChIPQC是一个用来分析ChIP-seq数据的Bioconductor包,它整合了可视化以及统计分析,用以处理比对完成的bam文件(需要peak文件)。
这个包主要有两个函数:

ChIPQC需要准备一个信息列表,提供给的ChIPQC()函数构建ChIPQCexperiment object

2. 示例

2.1 准备experiment sample sheet

ChIPQC包自带了准备好的sample信息表,但是未准备bam文件及peak文件,因为bam文件太大了,我们可以先看一下sample文件:

> library(ChIPQC)
> samples = read.csv(file.path(system.file("extdata", package="ChIPQC"), "example_QCexperiment.csv"))
> samples
  SampleID  Tissue Factor Replicate            bamReads                           Peaks
1   CTCF_1    A549   CTCF         1 reads/SRR568129.bam peaks/SRR568129_chr22_peaks.bed
2   CTCF_2    A549   CTCF         2 reads/SRR568130.bam peaks/SRR568130_chr22_peaks.bed
3   cMYC_1    A549   cMYC         1 reads/SRR568131.bam peaks/SRR568131_chr22_peaks.bed
4   cMYC_2    A549   cMYC         2 reads/SRR568132.bam peaks/SRR568132_chr22_peaks.bed
5   E2F1_1 HeLa-S3   E2F1         1 reads/SRR502355.bam peaks/SRR502355_chr22_peaks.bed
6   E2F1_2 HeLa-S3   E2F1         2 reads/SRR502356.bam peaks/SRR502356_chr22_peaks.bed

上图包含了所有必须的信息,bamReads和Peaks的参数是相对路径,当然你也可以指定直接路径,可以看出来这就是一个data.frame,在R里面都可以直接自己构建。

2.2 构建一个ChIPQCexperiment object

exampleExp = ChIPQC(samples, annotation = "hg19", blacklist = NULL, chromosome = "chr18")

这个里面需要注意的是,annotation是指你使用的参考基因组,其中一下物种的参考基因组的指定已经内置:

“hg19”: Human, version 19
“hg18”: Human, version 18
“mm10”: Mouse, version 10
“mm9” : Mouse, version 19
“rn4” : Rat, version 4
“ce6” : C. Elgans, version 6
“dm3” : D. Melanogaster, version 3

其中blacklist位置是需要不加以分析的区域,不理解的请去Google一下就可以,每个物种的blacklist是可以从UCSC上下载得到的。
另外,需要注意的是,chromosome参数也很重要,当你不去指定的时候,只会默认读取第一条序列进行统计。
作者的包里面内置了构建好的ChIPQCexperiment object,使用data(example_QCexperiment)调用:

> data(example_QCexperiment)
> exampleExp
Samples: 6 : CTCF_1 CTCF_2 ... E2F1_1 E2F1_2 
        Tissue Factor Replicate Peaks
CTCF_1    A549   CTCF         1  1118
CTCF_2    A549   CTCF         2   648
cMYC_1    A549   cMYC         1   253
cMYC_2    A549   cMYC         2   159
E2F1_1 HeLa-S3   E2F1         1   325
E2F1_2 HeLa-S3   E2F1         2   249
        Reads Map% Filt%   Dup% ReadL FragL RelCC  SSD  RiP% RiBL%
CTCF_1 341055  100  26.3 16.600    28   131 2.740 2.53 31.20  1.33
CTCF_2 303856  100  28.4  7.320    28   131 2.690 1.43 12.80  0.00
cMYC_1 287462  100  31.0 13.600    28    97 0.347 1.47  6.59  1.78
cMYC_2 317537  100  29.9  4.540    28   129 0.386 1.09  2.79  0.00
E2F1_1 223580  100  31.7  1.010    28   101 0.701 1.29  7.80  2.00
E2F1_2 194919  100  31.8  0.663    28   107 0.303 1.40  5.36  2.79

2.3 质量控制指标摘要

我们来依次看一下exampleExp里面的信息(解读的很粗略,寻求更深理解的可以自行阅读manual):

2.4 可视化数据

最后的操作很简单:

> ChIPQCreport(exampleExp)
Saving 7 x 7 in image
Saving 7 x 7 in image
Saving 7 x 7 in image
Using Sample as id variables
Saving 7 x 7 in image
Using Sample as id variables
Saving 7 x 7 in image
Saving 7 x 7 in image

异常无脑的操作,在当前工作目录就会出现一个ChIPQCreport文件夹,点开后会有图片以及一个报告html,打开查看即可。

上一篇 下一篇

猜你喜欢

热点阅读