edgeR

edgeR:Empirical Analysis of Digital Gene Expression Data in R

一个R包,用于RNA-seq或相关技术分析中,基因差异性表达的read count的分析。(read count 已通过HTseq-count等工具得到)。

read counts的来源可以htseq-count等计算原始count的结果,不可以是cufflinks等计算normalization count的结果。

counts数据格式:至少为两列,一列为基因类表,一列为raw counts。如果数据存储在不同的文件中,则应该将其合并。可以用readDGE函数。

edgeR是以DEGList的格式储存数据,DEGList是一个以list为基础的数据格式,list的所有方法其都可以使用。

1.构建DEGList:用DEGList()构建。

>y<-DGEList(counts=x)  #x是read counts的matrix或data.flame。
>group<-c(1,1,2,2)    #关于sample属于哪一个group。
>y<-DGEList(counts=x,group=group)

DEGList中主要包括一个counts matrix,一个 samples data.frame,还有一个可选的genes data.frame(注释)。

sample data.frame 主要包括library的size或sample的sequencing depth,如果没给,则会默认按counts的总和来计算。但是必须 sample data.frame必须包含一个列group,用于区分samples属于哪一个group。

2。过滤:

生物学上看,一个基因要被表达成蛋白或是其他的生物功能,则它的表达量应该达到一个最低的水平。
所以在进一步分析前,应该过滤掉一些low counts的基因。这里用cpm(count per million)来表示基因的counts水平。

>keep<-rowSums(cpm(y)>1)>=2  #>=2表示每个group中的samples数最少是2.
>y<-y[keep, ,keep.lib.sizes=FALSE]

3.TMM标准化:

在treated和untreated样品中,常常会有少量的基因在treated样品中高表达,但在untreated样品则正常。在treated样品中,高表达的基因的reads会占据一大部分的library size,

而导致剩余基因被错误的判断为下调。

>y<-calcNormFactors(y)
>y$samples

4.离散度的检测(dispersion)

design<-model.matrix(~group)

y<-estimateGLMCommonDisp(y,design,verbose=TRUE)

y<-estimateGLMTrendedDisp(y, design)

y<-estimateGLMTagwiseDisp(y, design)

5.差异性基因分析

to perform quasi-likelihood F-tests:

fit <- glmQLFit(y,design)

qlf <- glmQLFTest(fit,coef=2)

topTags(qlf)

to perform likelihood ratio tests:

fit<-glmFit(y, design)

lrt<-glmLRT(fit)

topTags(lrt)#前10个差异表达基因,内容分别为:genes:logFC:logCPM:F:PValue:FDR

#FC:fold change,,一般取两个样本的比值的均值,由于两个样本之间差异过大,为了缩小数值之间的差异,做对数转换。

P VALUE:统计学检验变量,代表差异显著性,一般认为p值小于0.05代表具有显著性差异。

参考:

http://blog.sina.com.cn/s/blog_5d188bc40102vwci.html

http://blog.sciencenet.cn/blog-508298-776802.html

时间: 2024-12-30 04:28:14

edgeR的相关文章

cuffdiff 和 edgeR 对差异表达基因的描述

ASE又走到了关键的一步  要生成能决定是否有差异表达的table. 准备借鉴一下cuffdiff和edgeR 的结果 cuffdiff对差异表达基因的描述:

edgeR之配对检验分析差异基因的使用教程

edgeR的介绍 背景 RNA-seq表达谱与生物复制的差异表达分析. 实现一系列基于负二项分布的统计方法,包括经验贝叶斯估计,精确检验,广义线性模型和准似然检验. 与RNA-seq一样,它可用于产生计数的其他类型基因组数据的差异信号分析,包括ChIP-seq,Bisulfite-seq,SAGE和CAGE. 简介 edgeR包是进行RNA-seq数据分析非常常用的一个R包.该包需要输入每个基因关于每个样本的reads数的数据,每行对应一个基因,每一列对应一个样本.edgeR作用的是真实的比对统

limma, edgeR, deseq2,genefilter计算差异R包的foldchange方法差别

差异计算对应生信分析非常重要 limma,genefilter 包计算差异,数据一定要转log, 因为 这两个包计算差异使用的方法是  mean(As)-mean(Bs)   , 也计算是  logAmean-logBmean = log(Amean/Bmean) 这也是为什么这两个包算出来的结果直接是logfoldchange . deseq2 包计算差异使用的是raw readscount,整数数据类型,计算差异的方法为 log(mean(As)/mean(Bs)), 是常规理解的平均值的比

扩增子分析QIIME2分析实战Moving Pictures

本示例的的数据来自文章<Moving pictures of the human microbiome>,Genome Biology 2011,取样来自两个人身体四个部位五个时间点 进入环境 source activate qiime2-2017.6 退出环境 source deactivate 准备数据 # 创建并进入工作目录 mkdir -p qiime2-moving-pictures-tutorialcd qiime2-moving-pictures-tutorial # 下载实验设

corsetjiedu

Corset: enabling differential gene expression analysis for de novo assembled transcriptomes 背景: 转录组测序这种高通量RNA测序,是一个非常强力的技术 去研究转录本的各个方面 it has a broad range of applications 它有着广泛的应用 包括发现新的基因,检测可变剪接,差异表达基因,基因融合检测,比如SNPs和转录后的编辑post- transcriptional edit

trinity based DEG analysis

Identifying Differentially Expressed Trinity Transcripts Our current system for identifying differentially expressed transcripts relies on using the EdgeR Bioconductor package. We have a protocol and scripts described below for identifying differenti

生信概念之

1.contig:A contig (from contiguous) is a set of overlapping DNA segments that together represent a consensus region of DNA 从reads拼接出来的更长的序列. 2.k-mer:k-mers refer to all the possible subsequences (of length k) from a read obtained through DNA Sequenci

用TCGA收集的mRNA表达数据作差异表达

做差异表达的软件DEseq和edgeR所需要的数据格式必须是原始counts,经过normalization和log2后的数据都不适合,所以对于做差异表达计算的童鞋可以使用ExperimentHub下载TCGA的原始数据. GEO地址:http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE62944安装:首先安装环境要求BioC 3.4## In R-3.3library(BiocInstaller)useDevel()biocValid()

第33章个人性格(代码大全5)

第33章 Personal Character 个人性格 33.1 个人性格是否和本书话题无关 33.2 聪明和谦虚 33.3 求知欲 33.4 诚实 33.5 交流与合作 33.6 创造力和纪律 33.7 懒惰 33.8 不如你想象中那样其作用的性格因素 33.9 习惯 33.1 Isn't Personal Character Off The Topic 个人性格是否和本书话题无关 编程过程非常耗用脑力,这种特性使得个人性格显得很重要.编程工作本质上是项无法监督的工作,因为没人真正清楚你正在