1. 程式人生 > 其它 >r語言系統計算上是奇異的_R語言相關性分析(上)

r語言系統計算上是奇異的_R語言相關性分析(上)

技術標籤:r語言系統計算上是奇異的

接觸組學資料這麼久了,大家一定少不了分析各種相關性,譬如大到幾個轉錄組樣本的整體相關性分析,小到挑選了一些候選基因看它們在不同樣本中的表達模式相關性。今天這篇文章給大家講講如何利用R語言進行相關性分析。

1 前言

組學資料分析主要有兩類,一類是基於被研究物件的位置和序列。一類是基於演算法。前者比如說lncRNA與mRNA的antisense和cis的作用關係,miRNA和piRNA的靶向基因預測等。後者就比如說機器學習、降維、聚類等演算法。

其中機器學習是通過程式不斷迭代來尋找合適的模型。

降維就是將高維資料通過計算,在儘量保證資料原始分佈特徵的情況下,將資料對映在低維的刻度。

聚類方法很多,常用的是計算歐式距離後,用K-mean聚類演算法進行聚類。

K-mean聚類演算法就是先隨機挑選k箇中心,按照距離遠近分別聚在一起,然後在聚類的簇裡重新選擇平均值作為中心點,重新聚類,再不斷迭代設定的次數,最後的結果就是聚類結果。

當然如果畫樹,還涉及分類樹的演算法。簡而言之,麻煩,不詳細說了。

相關性分析,這就是本文要詳細說的了。

2 相關性分析

相關性分析是一種統計技術。

相關性分析,就是衡量兩個變數之間的依賴性強弱

相關性:可以顯示兩個變數是否相關以及如何相關。例如,身高和體重是相關的; 較高的人往往有更大的體重。那麼這種關係就是正相關。那麼再例如汽車排量與每升汽油的里程,是負相關的,汽車排量越大,每升汽油跑的里程就越短。

儘管這種相關性非常明顯,但您的資料可能包含未預料到的相關性。您可能還會產生懷疑,懷疑兩個變數之間是否存在相關性,或者不知道兩者之間的依賴和聯絡程度。這個時候,就需要一種可以量化的指數分析。相關分析可以幫助我們更好地理解資料。

但是,使用相關性分析的時候,我們需要記住的一個關鍵事項是:永遠不要假設相關性就一定意味著A變數的變化會導致B變數的變化。

多年來個人電腦和運動鞋的銷售都急劇增長,並且它們之間存在高度相關性,但你不能認為購買電腦會導致人們購買運動鞋(反之亦然)。但可能還是可能存在相同的調節因素,比如社會生產力的提高和經濟狀況的改善。

1

正負相關性

當兩個變數之間存在非常強烈的相互依賴關係的時候,我們就可以說兩個變數之間的存在高度相關性。

若兩組的值一起增大,我們稱之為正相關,若一組的值增大時,另一組的值減小,我們稱之為負相關

bf39a65ef2561cc3c535b9eaf3af4075.png

本次我們用R來進行計算和繪圖,所用的資料是R自帶的mtcars資料。

> mtcars
> head(mtcars)
          mpg cyl disp hp drat  wt qsec vs am gear carb
Mazda RX4     21.0  6 160 110 3.90 2.620 16.46 0 1  4  4

Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4

Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1

Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1

Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2

Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1