#原始數(shù)據(jù)為count表
#source("https://bioconductor.org/biocLite.R")
#options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/")
#biocLite("limma")
#選擇路徑保存
setwd('E:/')
library(limma)
library(edgeR)
#表達(dá)矩陣
exprSet<-read.csv(file.choose(),header = T,sep = ",") #file="12_gene_count_matrix.csv"
head(exprSet)
#列名為樣本號
row.names(exprSet)<-exprSet[,1]
exprSet<-exprSet[,-1]
head(exprSet)
#分組信息
condition<-factor(c(rep("ASD",2),rep("Healthy",4),rep("ASD",1),rep("Healthy",2),rep("ASD",3)), levels = c("ASD","Healthy"))
condition
#分組矩陣
design<-model.matrix(~0+condition)
colnames(design)<-levels(condition)
rownames(design)<-colnames(exprSet)
design
v<-voom(exprSet,
design,
normalize = 'quantile',
plot=TRUE)
fit<-lmFit(v, design)
fit2<-eBayes(fit)
#聲明比較矩陣
cont.matrix<-makeContrasts(contrasts = c('ASD-Healthy'), levels = design)
fit3<-contrasts.fit(fit2, cont.matrix)
#結(jié)果
DEG1<-topTable(fit3, coef = 2, n = Inf) #
DEG2<-na.omit(DEG1)
head(DEG2); dim(DEG2)
#完整保存
write.table(diff_final,"diff_signif_final_limma.txt",row.names = T,quote = F,sep = "\t")
#設(shè)置閾值 FC=2^log2FC
p = 0.05
padj = 0.1
foldChange = 1.5
#FDR
diff_signif1<-DEG2[(DEG2$adj.P.Val < padj &
(DEG2$logFC > foldChange | DEG2$logFC < (-foldChange))),]
dim(diff_signif1)
#不矯正
diff_signif2<-DEG2[(DEG2$P.Value < p &
(DEG2$logFC > foldChange | DEG2$logFC < (-foldChange))),]
dim(diff_signif2)
#排序(選有用的三列)
diff_final<-diff_signif[order(diff_signif$logFC), c(1,4,5)] #選擇是否矯正
head(diff_final);dim(diff_final)
#篩選保存
write.table(diff_final,"diff_signif_final_limma.txt",row.names = T,quote = F,sep = "\t")
#save(diff_final, file = 'limma_diff.Rdata')
#差異基因注釋======================================================================
#注釋文件
ensembl2symbol<-read.table(file.choose(),header=T, sep="\t") #用矩陣,biomart自動有標(biāo)題
head(ensembl2symbol)
symbol2id<-read.table(file = file.choose(),header = T,sep = '\t')
head(symbol2id);colnames(symbol2id)<-c('gene_symbol','gene_id','gene_symbol2')
symbol2id<-symbol2id[,c(1,2)]
#DEG注釋(diff_final 或 DEG2)
#DEG<-read.table(file.choose(),header=T, sep="\t")
#head(DEG)
colnames(diff_final)[1]<-"Ensembl"
#library(tidyr)
#y<-separate(MAT, col=ensembl,into=c("ENSG","dot"),sep="\\.",remove = T);head(y)
#ensembl2symbol
ensg2id_dif<-merge(diff_final,ensembl2symbol,by.x="Ensembl",by.y="Gene.stable.ID.version",all=F,sort=F)
head(ensg2id_dif); dim(ensg2id_dif)
exprSet_new<-ensg2id_dif[,c(14,2:13)];head(ensg2id_dif);dim(ensg2id_dif)
write.table(exprSet_new,"dif_note_limma.txt",row.names = F,quote = F,sep = "\t")
轉(zhuǎn)錄組專題:limma與芯片數(shù)據(jù)差異表達(dá)分析
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門皇拣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來严蓖,“玉大人,你說我怎么就攤上這事审磁√胳” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵态蒂,是天一觀的道長杭措。 經(jīng)常有香客問我,道長钾恢,這世上最難降的妖魔是什么手素? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮瘩蚪,結(jié)果婚禮上泉懦,老公的妹妹穿的比我還像新娘。我一直安慰自己疹瘦,他們只是感情好崩哩,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著言沐,像睡著了一般邓嘹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上险胰,一...
- 文/蒼蘭香墨 我猛地睜開眼铸史,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了怯伊?” 一聲冷哼從身側(cè)響起沛贪,我...
- 正文 年R本政府宣布绽淘,位于F島的核電站,受9級特大地震影響闹伪,放射性物質(zhì)發(fā)生泄漏沪铭。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一偏瓤、第九天 我趴在偏房一處隱蔽的房頂上張望杀怠。 院中可真熱鬧,春花似錦厅克、人聲如沸赔退。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽硕旗。三九已至,卻和暖如春褪储,著一層夾襖步出監(jiān)牢的瞬間卵渴,已是汗流浹背。 一陣腳步聲響...