DESeq2에서 heatmap, PCA, MA, volcano plot 그리기
분석을 위한 DataSet이 필요하다. 예시에서는 여러 cell line에 몇 가지 drug를 각기 다른 dose로 처리했을 때의 결과를 분석하고자 한다.
DEG분석은 dose에만 초점이 맞춰지도록 디자인 하였다.
res변수는 결과가 adjust p-value 낮은순서대로 sorting하여 저장하였다.
sampleTable<-data.frame(sampleName=sampleFiles, fileName=sampleFiles, dose=I(dose), drug=drug, cell_line=cell_line)
ddsHTSeq<-DESeqDataSetFromHTSeqCount(sampleTable=sampleTable, directory=directory, design=~dose)
dds<-DESeq(ddsHTSeq)
res <- results(dds)
res <- res[order(res$padj),]
## annotation color
ann_colors = list(
dose = c(".." = "#F9EBD1"),
cell_line = c(".." = "#FFFFFF"),
drug = c(".." = "#BDBE32")
)
## heatmap
library("pheatmap")
ntd <- normTransform(dds)
select <- order(rowMeans(counts(dds,normalized=TRUE)),
decreasing=TRUE)[1:1000]
df <- as.data.frame(colData(dds)[,c("cell_line","drug","dose")])
rownames(df) = sampleFiles
pdf("heatmap_normalized_readcount.pdf")
pheatmap(assay(ntd)[select,], cluster_rows=T, show_rownames=F,
cluster_cols=T, annotation_col=df, annotation_colors = ann_colors)
dev.off()
'bioinformatics' 카테고리의 다른 글
oncotator 설치 및 실행하기 (0) | 2018.10.04 |
---|---|
liftover하기 (0) | 2018.09.28 |
Optical duplicate와 Library duplicates (0) | 2018.08.27 |
Genome에 존재하는 Variant란? (0) | 2018.08.20 |
DESeq2에서 연속적인 값을 condtion으로 받기 (0) | 2018.08.10 |