从FeatureCounts开始生成的原始计数文件,我使用了Edger来估计de分析,它进展顺利。现在我使用CPM标准化文件来探索多种途径中的一些特定基因表达。我知道CPM纠正了库大小而不考虑基因长度。是否可以使用此文件进行单个基因分析并生成发布的图表,或者我需要另一个标准化文件吗?请记住,我试图获得RPKM标准化文件。但即使在阅读类似的帖子之后,我不确定如何将输入基因长度达到RPKM()函数。这讨论说明最新版本的edgeR可以直接从DGEList对象中找到基因长度。我使用edgeR_3.28.1和任何人可以指导我如何得到基因长度,以便我可以出口RPKM?相关信息:我从。下载了水稻基因组MSU和参考组装用Hisat2完成。目前,我只有原始计数文件与我(即,没有.bam文件可用)。
这是我用于生成CPM的代码。正常化,
raw_counts<-read.delim("rawcounts.txt",row.names="Locus",check.names = TRUE) targets<-read.table("targets.txt",header=T,sep="\ T ") group<-factor(paste(targets$ gene,targets$Time,targets$Treatment,sep=".")) cbind(targets, group =group) y<-DGEList(counts = raw_counts,# filter - out low count genes keep <- rowsum (cpm(y)>=2) >=2 y <- y[keep,, keep.lib. keep] # filter - out low count genes keep <- rowsum (cpm(y)>=2) >=2 ysize =FALSE] y<-calcNormFactors(y) CPM<-cpm(y) #如何在rpkm()中合并基因长度?RPKM < -rpkm (y)
谢谢@ gordon symth。但是FeatureCounts需要BAM / SAM文件来估计基因长度(不幸的是,我没有带我的映射文件)。所以你认为无法使用FeatureCounts获得基因长度,或者我误解了文件吗?
基因长度从基因注释计算,而不是来自BAM文件。
您的问题表明计数是从FeatureCount获得的,因此必须已经运行了特派团,因此必须提供基因长度,除非您删除它们。
即使由于某种原因丢弃了基因长度,您也可以通过用于获得计数的相同的GTF注释轻松地再次计算它们。
您无法从成绩单长度获得基因长度。基因长度定义为该基因的外显子覆盖的总碱。这与最长记录长度的长度相比,但可能更长。
如果您拥有的只是转录长度,则使用每个基因的最长记录长度。
从a中获得基因长度实际上它很简单
TXDB.
包(或对象):类似的事情也可以用
TXDB.
op生成的。好的,我想我得到了它。你能证实吗?
我用单个BAM文件ran featurecounts(也使用了用于估计原始计数的相同gtf文件)
然后从output.txt,从列'长度'中提取基因长度并输入到RPM()函数中。
是的,你可以这样做。
或者您可以在R提示符下运行featurets。
或者您可以使用James MacDonald提供的TxDb代码。
或者您可以使用我添加到我的答案的代码直接从GTF文件中计算基因长度。