1. 什麼是差異表達基因
在不同組織中表達發生明顯變化的基因
是導致細胞狀態發生變化的關鍵基因
是表達譜分析的主要物件
2. 尋找差異表達基因的兩種方法
倍數變化閥值(一般設定為2倍)
具體方法:
找出所有基因的表達變化率
按照表達變化率排序
上調兩倍或者下調兩倍算作差異表達基因
適合條件:實驗重複數極少
差異基因數目比例(top5%, 即最上調的2.5%,最下調的2.5%)
用假設檢驗來做
3. r 語言實現
這個實驗作者想知道用infliximab **潰瘍性結腸炎 有應答組合無應答組的基因表達差異
3.1 材料準備
image.png
製作乙個target.txt 檔案
相當於記錄臨床資訊,12 個為應答組,11個為無應答組
image.png
image.png
3.2 r **
library(affy)
library(limma)
##import phenotype data
phenodata = read.annotateddataframe('target.txt')
pheno = pdata(phenodata)
view(pheno)
#import annotaion
anno = read.csv("annotation.csv",head=t)
view(head(anno))
##rma normalization
#eset.rma = rma(data)
eset.rma
datexpr = exprs(eset.rma)
#補充缺失值
library(impute)
#knn法計算缺失值
imputed_gene_exp = impute.knn(datexpr,k=10,rowmax = 0.5,
colmax=0.8,maxp =3000, rng.seed=362436069)
datexpr2 = imputed_gene_exp$data
write.table(datexpr2,file="expdata.txt",sep="\t")
獲得乙個校正過後的差異表達資料
image.png
#樣本分組
group = factor(pheno$group,levels=c('responder','nonresponder'))
design = model.matrix(~0+group)
colnames(design)
design
#線性模型擬合
fit
#構建比對模型,比較兩個條件下的表達資料
contrast.matrix
levels=design)
library(xlsx)
library(futile.logger)
#比對模型進行差值計算
fit2
#貝葉斯檢驗
fit2
#找出差異基因檢驗結果並輸出符合條件的結果
# 用responser - nonresponder 看正表達和負表達
diff = toptable(fit2,adjust.method="fdr",coef=1,p.value=0.05,
lfc=log(2,2),number=5000,sort.by = 'logfc')
#diff
diff$gene = anno$gene.symbol[match(rownames(diff),anno$id_ref)]
diff$id_ref = rownames(diff)
diff = diff[,c(8,7,1:6)]
diff = diff[diff$gene != '---',]
#output
最後找到差異表達基因列表,供後續分析
image.png
4. 整合資料分析
上面的例項是從乙個批次的樣本,只需要歸一化和背景校正即可。
如果從公共資料庫裡面得到不同的批次的樣本,那麼該如何去除批間差(batch effects)?
批間差一般由不同人員,不同環境,不同時間,不同機器,不同批次引起的
##sva--combat
library(sva) # 神奇,這個包竟然是實驗室的師兄寫的
library(pamr)
batch = pheno[,c('batch')]
batch
modcombat = model.matrix(~1,data=pheno)
combat_edata = combat(dat=datexpr2,batch=batch,
mod=modcombat,par.prior=t,
prior.plot=t)
write.table(combat_edata,file="expdata.txt",sep="\t")
image.png
DESeq2 檢測差異表達基因
deseq2的適用性 分析來自rna seq的計數資料,基因任務是檢測差異表達基因。也適用於其他分析 chip seq hic shrna篩選。快速開始dds deseqdatafrommatrix countdata cts,coldata coldata,design batch conditi...
RNA seq中的基因表達量計算和表達差異分析
差異分析的步驟 1 比對 2 read count 計算 3 read count 的歸一化 4 差異表達分析 背景知識 1 比對 普通比對 bwa,soap 開大gap 比對 tophat bowtie2 2 read count 多重比對的問題 丟棄平均分配 利用unique region 估計...
使用RSEM進行轉錄組測序的差異表達分析
仍然是兩年前的筆記 1.prepare reference 如果用rsem對比對後的bam進行轉錄本定量,則在比對過程中要確保比對用到的索引是由rsem prepare reference產生的。software rsem rsem prepare reference transcript to g...