标准正态分布表_表达矩阵的归一化和标准化,去除极端值,异常值
我們閱讀量破萬的綜述:RNA-seq這十年(3萬字長文綜述)給粉絲朋友們帶來了很多理解上的挑戰(zhàn),所以我們開辟專欄慢慢介紹其中的一些概念性的問題,上一期:
RNA-seq的counts值,RPM, RPKM, FPKM, TPM 的異同
在數(shù)據(jù)挖掘過程,數(shù)據(jù)的歸一化和標(biāo)準(zhǔn)化是必須的。取log值就是一種歸一化的方法,z-score是常用的標(biāo)準(zhǔn)正態(tài)分布化的方法。
歸一化和標(biāo)準(zhǔn)化的區(qū)別
實(shí)際上口語里面通常是沒辦法很便捷的區(qū)分這兩個概念。
歸一化:將每個樣本的特征值(在轉(zhuǎn)錄組中,特征值就是表達(dá)量)轉(zhuǎn)換到同一量綱下,把表達(dá)量映射到特定的區(qū)間內(nèi),區(qū)間的上下限由表達(dá)量的極值決定,這種區(qū)間縮放法是歸一化的常用方法。
標(biāo)準(zhǔn)化:按照表達(dá)矩陣中的一個基因在不同樣本中的表達(dá)量處理數(shù)據(jù),每個樣本點(diǎn)都能對標(biāo)準(zhǔn)化產(chǎn)生影響,通過求z-score值,轉(zhuǎn)換為標(biāo)準(zhǔn)正態(tài)分布,經(jīng)過處理的數(shù)據(jù)的均值為0,標(biāo)準(zhǔn)差為1,因此z-score也稱為零-均值規(guī)范化。
取log對表達(dá)量的影響
原始的raw counts矩陣是一個離散型的變量,離散程度很高。有的基因表達(dá)豐度比較高,counts數(shù)為10000,有些低表達(dá)的基因counts可能10,甚至在有些樣本中為0。
即使經(jīng)過了RPKM/FPKM等方法抵消了一些測序技術(shù)誤差的影響,但高低豐度基因的表達(dá)量的差距依然很大。
如果對表達(dá)量去一下log10,發(fā)現(xiàn)10000變成了4,10變成了1,這樣之前離散程度很大的數(shù)據(jù)就被集中了。
如上圖,這些離散的表達(dá)量都匯聚到了不同底數(shù)的log函數(shù)線上,可以使繪制的熱圖、箱線圖等圖形更加美觀。
有時當(dāng)表達(dá)量為0時,取log會出現(xiàn)錯誤,可以log(counts+1)來取log值。當(dāng)x=1時,所有的log系列函數(shù)值都為0。這樣原本表達(dá)量為0的值,取log后仍為0。
這也就是UCSC的XENA下載到的表達(dá)矩陣的形式。
z-score對表達(dá)量的影響
log對每個樣本的表達(dá)量的處理標(biāo)準(zhǔn)是一樣,而z-score考慮到了不同樣本對表達(dá)量的影響,計算z-score時,消除到了表達(dá)的平均水平和偏離度的影響。
轉(zhuǎn)換后表達(dá)量符合正態(tài)分布分布,Z-score只是一個臨界值,是標(biāo)準(zhǔn)化的結(jié)果,本身沒有意義,有意義的在于在標(biāo)準(zhǔn)正態(tài)分布模型中它代表的概率值。
所以只要知道Z值, 查對應(yīng)的正態(tài)分布表,就可以知道表達(dá)量偏離平均水平的程度。
表達(dá)量log歸一化和z-score標(biāo)準(zhǔn)化的使用范圍
如果對表達(dá)量的范圍有要求,用歸一化。
如果表達(dá)量較為穩(wěn)定,不存在極端最大最小值,使用歸一化。
如果表達(dá)量離散程度很大,存在異常值和較多噪音,用標(biāo)準(zhǔn)化可以避免異常值和極端值的影響。
在分類、聚類、PCA算法中,使用z-score值的結(jié)果更好。
數(shù)據(jù)不太符合正態(tài)分布時,可以使用歸一化。
機(jī)器學(xué)習(xí)的算法(SVM、KNN、神經(jīng)網(wǎng)絡(luò)等)要求歸一化/標(biāo)準(zhǔn)化
剔除異常值
大家看群主代碼繪制熱圖,里面經(jīng)常看到z-score以及去除極端值的:
希望你看清楚下面代碼是如何進(jìn)行z-score的
pheatmap(dat)n=t(scale(t(dat)))
n[n>2]=2?#限定上限,使表達(dá)量大于2的等于2
n[n-2]=?-2?#限定下限,使表達(dá)量小于-2的等于-2n[1:4,1:4]pheatmap(n,show_colnames?=F,show_rownames?=?F)ac=data.frame(group=cluster)rownames(ac)=colnames(n)pheatmap(n,annotation_col?=?ac,show_colnames?=F,show_rownames?=?T)n[n-1]=?-1?#?重新限定下限,使表達(dá)量小于-2的等于-2
n[1:4,1:4]?
pheatmap(n,annotation_col?=?ac,
?????????show_colnames?=F,show_rownames?=?T)
總結(jié)
在一些公共數(shù)據(jù)庫如TCGA、GEO中,會提供取log值、z-score后的表達(dá)量矩陣,這些值都是count矩陣的另一種表示形式。了解這些值背后的含義及應(yīng)用范圍,針對不同的數(shù)據(jù)挖掘模型,選取適合的表達(dá)量的表示形式來達(dá)到預(yù)期的結(jié)果。
那么,怎么樣知道你的表達(dá)矩陣是否需要進(jìn)行歸一化或者標(biāo)準(zhǔn)化呢?下面的學(xué)習(xí)班可能會幫助你!
全國巡講約你
第1-11站北上廣深杭,西安,鄭州, 吉林,武漢,成都,港珠澳(全部結(jié)束)
一年一度的生信技能樹單細(xì)胞線下培訓(xùn)班(已結(jié)束)
全國巡講第13站-杭州(生信技能樹爆款入門課)(下一站甘肅蘭州,火熱報名)
總結(jié)
以上是生活随笔為你收集整理的标准正态分布表_表达矩阵的归一化和标准化,去除极端值,异常值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle插入性能优化,Oracle-
- 下一篇: 理解DOM事件流的三个阶段 - Lxxy