數據分析中的嚴謹問題

數據分析中,不少人存在或多或少的不嚴謹操作。本文大致列舉一些

關於Fold Change的計算

Fold Change是差異biomarker篩選的一個常用步驟,一般大家都使用兩組的均值相除進行計算。但是,對於非正態分佈,使用均值相除是否合理?以下找幾個特殊案例進行分析

存在異常值時

A組:1, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 7, 10, 36, 均值爲6.33, 中位數爲4,且數據集中趨向於3-4附近.

B組:3, 4, 4, 5, 5, 5, 5, 6, 6, 7, 7, 8, 9, 10, 11, 均值爲6.33, 中位數爲6,且數據集中趨向於5-6附近

可見,存在異常值時(尤其是樣本量不夠大時),採用均值可能得出不夠有表徵能力的FC值。

存在偏態分佈時

A組:1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 5, 5, 6, 8, 10, 均值爲4.0, 中位數爲3,且數據集中趨向於3附近.

B組:0, 1, 2, 2, 3, 4, 4, 5, 5, 5, 5, 5, 6, 6, 8, 10, 均值爲4.4, 中位數爲5,且數據集中趨向於5附近.

可見,存在偏態分佈時,採用均值也可能得出不夠有表徵能力的FC值。

何去何從

雖然我們會遭遇上述情況,但是大多數情況下,均值與中位數的表徵能力差別不會太大。當某組數據雜亂無章(雙峯甚至多峯分佈)時,這個特徵可能並不是理想的特徵。當數據存在偏態分佈時,頂多只會稀釋差距,而對於真正有價值的特徵,這點稀釋也還能接受。

GSEA官網中,gene rank採用的幾種方式中,Fold Change默認採用的是通過均值計算(雖然可以修改成中位數計算方式)。建議對於一般情況,仍然可以採用均值計算FC值。以下摘自文字及截圖GSEA官網:GSEAUserGuide

To use median rather than mean expression values, set the Median for class metrics parameter to True, as described above.

      

GSEA官方推薦的是Signal2Noise來對gene進行排序。從公式上來看,Signal2Noise的正負性與log2FC的正負性是一致的。筆者基於強迫症,進一步使用R計算了基於均值的FC值,和GSEA軟件Signal2Noise跑出來的基本一致(正負數個數一致,13K基因只偏差了1個,log2FC爲0的有好幾個,可能截點選取規則不同吧)。至少說明,GSEA做富集分析時,默認基於均值計算rank,這也是大家公認的。

GSEA富集分析的rank規則,是否可以自定義?比如採用模型權重w值?

 

關於Fold Change的界值

這個在之前的博客裏討論過。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章