ChIP-seq上下游学习

前言

不知不觉,时间过得太快,这个教程的学习居然拖。。。了半年!

趁春节放假,还是把它完成吧。顺完这个教程之后,测序相关的上下游分析算是打通了一二,暂告一段落。

参考Jimmy老师的ChIP-seq教程《https://cloud.tencent.com/developer/article/1346037》。感恩!

过程不赘述,上面教程有所有的分析和代码。

还是在conda里面进行分析,这个环境集中安装了所有需要的程序。

在这里插入图片描述

简略过程

如果你做过RNA-seq或者WES等的上游分析,那流程应该就很熟悉了。

1 下载SRA文件

#开代理吧,网速飞起
fasterq-dump  --split-3 -O ../fastq $id/$id.sra

2 去掉adaptor

trim_galore $fq1 -q 25 --phred33 --length 25 -e 0.1 --stringency 4 -o ../clean

3 qc质量控制

## qc reports
cd ../qc
ls ../raw/*fastq|xargs fastqc -t 10 -o  ./
multiqc ./
ls ../clean/*fq|xargs fastqc -t 10 -o  ./
multiqc ./

4 与参考基因组比对

file=$(basename $id)
sample=${file%%.*}
bowtie2_index=~/public/references/index/bowtie2/mm10/mm10
bowtie2 -p 5 -x $bowtie2_index -U $id | samtools sort -O bam -@ 5 -o - > ${sample}.bam

5 查看Bam文件统计信息

ls  *.bam  |xargs -i samtools index {}
ls  *.bam  | while read id ;do ( samtools flagstat $id > $(basename $id ".bam").stat & );done

6 合并Bam

ls *.bam|sed 's/_[0-9].bam//g' |sort -u |while read id;do samtools merge -f ../mergeBam/$id.merge.bam $id*.bam ;

7 PCR去重

ls  *merge.bam  | while read id ;do (nohup samtools markdup -r $id $(basename $id ".bam").rmdup.bam & );done

8 使用macs2 找 peak

nohup macs2 callpeak -c  Control.merge.bam -t $id.merge.bam -f BAM -B -g mm -n $id --outdir ../peaks  2> $id.log &

这里找peak,是需要和control组进行比较的,也就是找差异。

得到下面的*_summits.bed就是与control组比较完之后的差异序列信息。

可以看到control组为零。

在这里插入图片描述

在这里插入图片描述

找完peak,上游分析就结束了。下面进行一些可视化的探索。

9 使用Deeptools进行

## change to bw file
refgene=~/public/references/CHIPSeq/mouse.ref
samtools index $id # create indexs
bamCoverage -b $id -o $sample.bw 
computeMatrix reference-point --referencePoint TSS -p 4 -b 2000 -a 2000 -R $refgene -S $sample.bw --skipZeros -o ${sample}_TSS.gz --outFileSortedRegions ${sample}_genes.bed
plotHeatmap -m ${sample}_TSS.gz -out ../plotHeatmap/${sample}.pdf --plotFileFormat pdf  --dpi 720

10 单独和所有组别画图

在这里插入图片描述

可以看到单独画图和一起画图的区别。这种图大概属于CNS系列,高大上。

11 R里面进行ChIPSeeker注释

library(ChIPseeker)
bedPeaksFile         = 'H3K36me3_summits.bed'; 
#bedPeaksFile
require(ChIPseeker)
require(TxDb.Mmusculus.UCSC.mm10.knownGene)
txdb <- TxDb.Mmusculus.UCSC.mm10.knownGene
require(clusterProfiler) 
peak <- readPeakFile( bedPeaksFile )  
keepChr= !grepl('_',seqlevels(peak))
seqlevels(peak, pruning.mode="coarse") <- seqlevels(peak)[keepChr]
peakAnno <- annotatePeak(peak, tssRegion=c(-3000, 3000), 
                         TxDb=txdb, annoDb="org.Mm.eg.db") 
peakAnno_df <- as.data.frame(peakAnno)

得到下面的注释:
在这里插入图片描述
在这里插入图片描述

其他的下游分析可自行尝试。

好了,这个教程学习到此结束。下一个目标,单细胞测序分析!我这步子虽然迈了慢一点,但我坚持下来了。

文章首发于微信公众号:颗粒神经元。欢迎关注。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Chip-seq(Chromatin Immunoprecipitation Sequencing)是一种常用的表观遗传学研究方法,用于研究染色质上的蛋白质与DNA相互作用的情况。Chip-seq数据分析是指对Chip-seq实验所得到的大量序列数据进行处理和分析,以获得有关染色质状态和蛋白质相互作用的信息。 Chip-seq数据分析的主要步骤包括: 1. 数据质量控制:对原始数据进行质量控制,筛除低质量序列和序列中的适配器等。 2. 数据预处理:将序列比对到参考基因组上,去除重复的序列,调整序列长度,以便于后续分析。 3. 峰识别:利用统计方法识别出与某种蛋白质结合区域的“峰”,即ChIP信号显著高于背景水平的区域。 4. 峰注释:将峰与生物信息学数据库中的基因、转录因子结合位点等信息进行注释,以获得与研究对象相关的生物信息学特征。 5. 峰差异分析:比较不同实验条件下的Chip-seq数据,寻找峰的差异,以发现不同生物学过程中基因调控的差异。 6. 通路分析:将差异的峰与生物通路、转录因子网络等生物信息学数据库进行匹配,以发现与研究对象相关的生物通路和机制。 7. 结果可视化:将Chip-seq数据分析的结果可视化,如制作热图、曲线图等,以直观表达Chip-seq数据的生物学意义。 总之,Chip-seq数据分析是一个复杂的过程,需要熟练掌握多种分析方法和工具,以便于从大量的序列数据中提取有用的生物学信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值