RNA-seq项目log2(ratios)折线图r包,加上对不同基因集群进行聚类
时间: 2023-05-25 17:03:01 浏览: 164
您可以使用R语言中的以下包来生成RNA-seq项目log2(ratios)折线图并对不同基因集群进行聚类:
1. edgeR
2. DESeq2
3. clusterProfiler
以下是一个简单的R代码示例,向您展示如何使用这些包来完成任务:
#加载必要的包
library(edgeR)
library(DESeq2)
library(clusterProfiler)
#读取RNA-seq数据
counts <- read.table("path/to/counts.csv", header=TRUE, row.names=1, sep=',')
#使用edgeR包来标准化数据
y <- DGEList(counts)
y <- calcNormFactors(y)
design <- model.matrix(~group)
y <- estimateDisp(y, design)
fit <- glmQLFit(y, design)
qlf <- glmQLFTest(fit, coef=2)
log2_ratios <- qlf$table$logFC
#绘制折线图
plot(log2_ratios, type="l")
#使用DESeq2进行差异表达分析和基因聚类
dds <- DESeqDataSetFromMatrix(countData=countdata,colData=coldata,design=~batch+condition)
dds <- DESeq(dds)
res <- results(dds, contrast=c("condition", "treated", "control"))
qvalue <- res[,"padj"]
log2FC <- res[,"log2FoldChange"]
heatmap.2(expr, dendrogram="both", scale="row", trace="none", labRow=rownames(expr), Colv=FALSE, hclustfun=hclust, distfun=function(x) as.dist(1-cor(t(x),method="spearman")), ColSideColors=color_bar)
#使用clusterProfiler包进行GO富集分析
res_ordered <- res[order(res$pvalue),]
res20 <- res_ordered[1:20,]
background <- rownames(countdata)
ids <- rownames(res20)
enrich <- enrichGO(ids=ids,OrgDb="org.Hs.eg.db",ont="BP",pvalueCutoff=0.05,readable=T, gene2Symbol= T,background=background)
barplot(enrich,showCategory=15,font.size=7,cex.names=0.7)
阅读全文