limma 包的normalizeBetweenArrays和其他數據矯正方法

原文鏈接:https://my.oschina.net/u/4503882/blog/4511789

數據矯正前.png

可以看到,腫瘤樣品的表達量整體就比正常對照樣品的表達量高出一大截,這樣的數據進行后續分析,就會出現大量的上調基因。

因為我一直強調,做表達矩陣分析一定要有三張圖,見:你確定你的差異基因找對了嗎? ,所以就讓粉絲繼續摸索,其中PCA如下:

做表達矩陣分析一定要有三張圖.png

可以看到,兩個分組是涇渭分明的,這可能是生物學差異,因為腫瘤樣品就肯定跟正常組織不一樣的啊,也有可能是批次效應。所以我給粉絲的建議是兩個策略

第一個策略是直接normalizeBetweenArrays處理,然后走差異分析。

第二是先去除批次效應,然后走差異分析。

建議你比較一下,這兩個差異分析的區別。
然后粉絲的行動也很迅速,兩三天就回復了郵件,給出了兩個摸索結果:


方法一:limma 包的normalizeBetweenArrays.png

可以看到,直接normalizeBetweenArrays處理其實就是一個quantile的normalization而已,大家可以去看quantile normalization到底對數據做了什么 - 簡書,了解一下。

從韋恩圖可以看到,沒有進行normalizeBetweenArrays處理之前呢,上調基因真的是超級多啊!經過了normalizeBetweenArrays處理之后呢,其中616個上調基因變成了沒有顯著性改變的基因,然后637個居然由上調基因變成了下調基因,當然了,也有341個基因維持原來的上調屬性。

是不是很可怕!!!

方法二:limma 包的removeBatchEffect.png

粉絲下的這個結論很正確,這個時候使用 limma 的 removeBatchEffect 函數來矯正批次效應,肯定是錯的,因為完全沒有搞清楚矯正批次效應的統計學原理。
其實幾年前我在《單細胞天地》公眾號發起過一個談論,見:到底是批次效應還是真實生物學差異,如果你僅僅是做了兩個單細胞轉錄組樣品,想合并這兩個數據再后續分析,就面臨著兩個樣品(處理前后的生物學差異)本身的批次效應(不同時間點取樣,不同10x上機時間等等)。因為是單細胞,一個樣品里面本身就有這成千上萬個細胞,可以針對兩個樣品內部的某些具有不變屬性的單細胞來作為錨定,從而比較好的合并兩個樣品的單細胞轉錄組數據。

但是,如果是bulk轉錄組測序,或者表達量芯片,就基本上不可能做到區分具有生物學差異的兩個樣品的批次效應了。雖然說我在《生信技能樹》寫過不少相關教程,比如:多種批次效應去除的方法比較,但那樣的去除是針對生物學差異與批次效應交叉的情況來去除。比如:

  • 第一個批次:2個處理,2個對照樣品
  • 第二個批次:3個處理,3個對照樣品

這個時候,就可以使用 limma 的 removeBatchEffect 函數或者 sva 的 ComBat 函數,把批次效應去除掉,然后保留生物學差異供后續的差異分析。

但是如果你的實驗設計是:

  • 第一個批次:3個處理樣品
  • 第二個批次:3個對照樣品

那我就只能奉勸你,對這個數據集說拜拜了!

normalizeBetweenArrays

rt=read.table("lncRNA.txt",sep="\t",header=T,check.names=F)
#重復基因取均值,去重復
rt=as.matrix(rt)
rownames(rt)=rt[,1]
exp=rt[,2:ncol(rt)]
dimnames=list(rownames(exp),colnames(exp))
rt=matrix(as.numeric(as.matrix(exp)),nrow=nrow(exp),dimnames=dimnames)
rt=avereps(rt)
rt=rt[rowMeans(rt)>0,]
#1個數據集批內矯正
rt=normalizeBetweenArrays(as.matrix(rt))
boxplot(rt)

removeBatchEffect

rt1=read.table("lncRNA1.txt",sep="\t",header=T,check.names=F)
rt2=read.table("lncRNA2.txt",sep="\t",header=T,check.names=F)
rt1=as.matrix(rt1)
rt2=as.matrix(rt2)
rt3<-merge(rt1,rt2)
rownames(rt3)=rt3[,1]
exp=rt3[,2:ncol(rt3)]
dimnames=list(rownames(exp),colnames(exp))
rt3=matrix(as.numeric(as.matrix(exp)),nrow=nrow(exp),dimnames=dimnames)
#查看未作批次矯正前的表達圖
boxplot(rt3)
#多個數據集批次矯正
batch <- c(rep('con',182),rep('treat',32))
group_list <- c(rep('tumor',6),rep('normal',6),rep(c('tumor', 'normal'),each=3))
design=model.matrix(~group_list)
rt=removeBatchEffect(rt3,batch = batch,design = design)
boxplot(rt)
write.table(rt,file="rt.xls",sep="\t",quote=F)
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
禁止轉載,如需轉載請通過簡信或評論聯系作者。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,563評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,694評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,672評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,965評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,690評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,019評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,013評論 3 449
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,188評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,718評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,438評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,667評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,149評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,845評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,252評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,590評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,384評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容