首页 > 其他分享 >DiffBind使用教程 | ChIP-seq | ATAC-seq | Cut&Run | Cut&Tag

DiffBind使用教程 | ChIP-seq | ATAC-seq | Cut&Run | Cut&Tag

时间:2022-12-03 07:11:24浏览次数:33  
标签:Cut Run seq DiffBind library bam

 

挺好用,只需要bam和peak就能做差异分析。

 

准备工作,一个meta info的sample file。主要是bam和bed的位置,bed可以用macs一行命令合并所有bam来做peak calling。

 

library(DiffBind)
# library(tidyverse)
samples <- read.csv("EXP1.csv")
exp1 <- dba(sampleSheet=samples)
exp1 <- dba.count(exp1) 

raw.count <- dba.peakset(exp1, bRetrieve=TRUE, DataType = DBA_DATA_FRAME)
rownames(raw.count) <- paste(raw.count$CHR, raw.count$START, raw.count$END, sep = ":")

exp1 <- dba.normalize(exp1, normalize=DBA_NORM_TMM)

norm.count <- dba.peakset(exp1, bRetrieve=TRUE, DataType = DBA_DATA_FRAME)
rownames(norm.count) <- paste(norm.count$CHR, norm.count$START, norm.count$END, sep = ":")

# first is case, second is control
AD3_SOX9 <- dba.contrast(exp1, contrast=c("Condition","AD3_SOX9_EXP1","AD3_IgG_EXP1"))
AD3_SOX9 <- dba.analyze(AD3_SOX9)
AD3_SOX9.report <- dba.report(AD3_SOX9, DataType=DBA_DATA_FRAME)
rownames(AD3_SOX9.report) <- paste(AD3_SOX9.report$Chr, AD3_SOX9.report$Start, AD3_SOX9.report$End, sep = ":")

N3_SOX9 <- dba.contrast(exp1, contrast=c("Condition","N3_SOX9_EXP1","N3_IgG_EXP1"))
N3_SOX9 <- dba.analyze(N3_SOX9)
N3_SOX9.report <- dba.report(N3_SOX9, DataType=DBA_DATA_FRAME)
rownames(N3_SOX9.report) <- paste(N3_SOX9.report$Chr, N3_SOX9.report$Start, N3_SOX9.report$End, sep = ":")

# save
save(samples, raw.count, norm.count, AD3_SOX9, AD3_SOX9.report, N3_SOX9, N3_SOX9.report, file = "DiffBind.result.Rdata")

  

核心就是设置好condition,后期可以指定任意两个condition来比较。

其次就是normalization,这里用的edgeR的TMM方法,注意check是否normalization成功。

最后就是手动check 软件生成的log2FC方向是否正确。

 

保存所有中间文件,以备后续分析。

 

标签:Cut,Run,seq,DiffBind,library,bam
From: https://www.cnblogs.com/leezx/p/16946313.html

相关文章