edgeR中怎么實現兩組間差異分析操作,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
創新互聯公司于2013年成立,是專業互聯網技術服務公司,擁有項目網站設計、成都網站設計網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元隴南做網站,已為上家服務,為隴南各地企業和個人服務,聯系電話:18982081108
需要讀取基因在所有樣本中的表達量文件,示例如下
gene_id ctrl-1 ctrl-2 ctrl-3 case-1 case-2 case-3 geneA 14 0 11 4 0 12 geneB 125 401 442 175 59 200
每一行為一個基因,每一列代表一個樣本。讀取數據的代碼如下
# 讀取表達量的表格 counts <- read.table( "gene.counts.tsv", header=T, sep="\t", row.names=1, comment.char="", check.names=F) # 設置樣本分組 groups <- factor(c(1,1,1,2,2,2)) # 構建edgeR中的對象 y <- DGEList(counts=count,group=group)
根據CPM
表達量對基因進行過濾,代碼如下
keep <- rowSums(cpm(y)>1) >= 2 y <- y[keep, , keep.lib.sizes=FALSE]
默認采用TMM
歸一化算法,計算每個樣本的 sizefactor, 代碼如下
y <- calcNormFactors(y)
代碼如下
design <- model.matrix(~group) y <- estimateDisp(y,design) et <- exactTest(y)
將差異分析的結果保存到文件中,代碼如下
res <- et$table write.table(res, "edgeR.xls", header = T, col.names = NA, sep = "\t" )
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創新互聯行業資訊頻道,感謝您對創新互聯的支持。