R計算多個向量兩兩之間相關性

2021-02-21 生信交流平臺

我們知道R裡面計算兩個數值向量之間的相關性用cor函數,而檢驗是否顯著相關用cor.test。例如

a=1:10set.seed(123)b=a+rnorm(10,0,0.05)cor(a,b)  cor.test(a,b)

會得到如下結果,a和b是幾乎完整正相關的,相關係數是0.9998834。一般相關係數是-1到1之間的一個數,-1表示完全負相關,1表示完全負相關。>0正相關,<0負相關,=0不相關。

我們還可以簡單的畫圖展示一下

plot(a,b)abline(lm(b~a),col="red",lwd=2,lty=2)

那麼如果你有多個數值向量需要計算相關性怎麼辦?

我們拿mtcars這套R自帶的數據來舉個例子,這套數據有32行,11列。

每一行為一種車型,每一列為一種特徵。

下面我們就來看看,如何計算這11種特徵兩兩之間的相關性,這裡給大家介紹四種方法

一、corrplot包

install.packages("corrplot")library(corrplot)M <- cor(mtcars)Pval <- cor.mtest(mtcars)corrplot(M, method = "circle")

我們可以來看下特徵兩兩之間的相關係數

也可以看看特徵兩兩之間的相關性檢驗的P值,

看看相關性圖

二、corr包

install.packages("corrr")library(corrr)correlate(mtcars)

這個包還有一個特點,就是可以指定某幾個特徵,然後計算跟剩下特徵之間的相關性

focus(correlate(mtcars), mpg)

三、psych包

install.packages("psych")library(psych)corr.test(mtcars)

得到特徵兩兩之間的相關係數如下

同時也能得到相關性的p值

四、Hmisc包

#安裝Hmisc包install.packages("Hmisc")library(Hmisc)rcorr(as.matrix(mtcars))

得到特徵兩兩之間的相關係數如下

同時也能得到相關性的p值

條條大路通羅馬

不管是白貓還是黑貓,抓住老鼠就是好貓

弱水三千只取一瓢

總之,方法很多,選擇適合自己的方法達到目的就行。

你的贊同是我前進的動力

相關焦點

  • R與生物專題 | 第七講 R-相關性分析及作圖
    今天的更新,我們會帶您學習用R語言做相關性分析和作圖。相關性分析用於評估兩個或多個變量之間的關聯。例如,如果我們想知道父親和兒子的身高之間是否存在關係,可以計算相關係數來回答這個問題。如果兩個變量(父親和兒子的身高)之間沒有關係,則兒子的平均身高應該相同,而與父親的身高無關,反之亦然。
  • 數據分析基礎相關性分析,SPSS實操
    樣本相關係數r:在說明變量之間線性相關程度時,根據經驗可將相關程度分為以下幾種情況: 若r≥0.8 時,視為高度相關; 若0.5≤r<0.8 時,視為中度相關; 當0.3≤r<0.5 時,視為低度相關;
  • 【R語言】相關性分析、相關係數的顯著性檢驗及可視化
    本篇文章介紹基於R語言的相關性分析、相關係數的顯著性檢驗及可視化,該教程為個人筆記,大家也可參考學習,不足之處也歡迎大家批評指正!相關性分析用於評估兩個或多個變量之間的關聯,能通過定量指標描述變量之間的強弱、直接或間接聯繫。
  • R數據分析:創建向量的方法
    在R語言中,向量(Vector)是相同基本類型元素組成的序列,相當於一維數組。向量的元素可以是數值型、字符型、邏輯值型和複數型,對應分別稱為數值型向量、字符串型向量、邏輯型向量和複數型向量。向量中可以包含一個元素,也可以包含多個元素。同一個向量中的數據類型應該相同。
  • 【R】ggcor相關性可視化
    上周,我們寫了一個 ggcor 對相關性可視化的帖子 (【ggcor】相關性圖的另外一種展示)。裡面用到的例子是厚老師的示例數據。這次,我自己構建數據集,探索如何使用 ggcor 進行展示。data.frame(S1 = runif(10,1,10),                  S2 = runif(10,1,10),                  S3 = runif(10,1,10),                  S4 = runif(10,1,10),                  S5 = runif(10,1,10))# 計算相關性和
  • 向量?——向量及其線性運算
    今天先來一點開胃菜,複習一下向量代數及其線性運算的內容。主要是三部分知識:空間直角坐標系的概念、向量的有關定義和性質、向量的線性運算。一:空間直角坐標系的概念1.空間直角坐標系:定義:在空間取定一點O,和三個兩兩垂直的單位向量i,j,k,就確定了三條以O為原點的兩兩垂直的數軸,依次記為x軸,y軸,z軸。
  • 向量點乘與向量叉乘
    1.3 幾何意義     點乘的幾何意義是可以用來表徵或計算兩個向量之間的夾角,以及在b向量在a向量方向上的投影,有公式:                       a·b = |a||b|cosθ那麼a,b向量的夾角:
  • 什麼是期貨品種相關性
    什麼是期貨品種相關性 期貨品種相關性:相關係數是用以反映變量之間相關關係密切程度的統計指標。相關係數是按積差方法計算,同樣以兩變量與各自平均值的離差為基礎,通過兩個離差相乘來反映兩變量之間相關程度;著重研究線性的單相關係數。
  • R語言從入門到精通:Day10-R語言統計入門代碼大全
    而偏相關是指在控制一個或多個定量變量時,另外兩個定量變量之間的相互關係。你可以使用ggm包中的pcor()函數計算偏相關係數。函數pcor()的參數為一個數值向量,前兩個數值表示要計算相關係數的變量下標,其餘的數值為條件變量(即要排除影響的變量)的下標,參數S為變量的協方差陣。
  • 從向量計算說起!射線檢測!Cocos Creator
    接下來進入正題,已知入射向量(單位向量),法向量(單位向量),如何得出反射向量?我們將反射向量平移至入射向量起點,延長法向量與其相交,這個延長線的長度,剛好是 入射向量在法向量上的投影的相反數的兩倍 。再根據投影和向量加法可以推出反射向量的計算公式。清楚了麼?不清楚也沒關係,記得最後的公式就可以了,接下來進入 cocos creator 操作環節。
  • 中國期貨市場相關性一覽表
    2014.07.11 市場相關性研究:從商品間相關係數挖掘市場宏觀性趨勢  相關係數( Correlation coefficient)  相關係數是用以反映變量之間相關關係密切程度的統計指標。相關係數是按積差方法計算,同樣以兩變量與各自平均值的離差為基礎,通過兩個離差相乘來反映兩變量之間相關程度;著重研究線性的單相關係數。  相關係數 r的值介於–1 與+1之間,在二維線形條件下,當 r為1 時,表示兩組變量為完全的正相關;r為-1時則表示完全負相關;r越靠近0軸,兩組變量間相關性越弱。一般來說,|r|在0.7以上已屬高度相關。
  • 常用的相似度和距離計算方法
    Levenshtein.hamming(str1, str2)計算漢明距離。要求str1和str2必須長度一致。是描述兩個等長字串之間對應位置上不同字符的個數。Levenshtein.ratio(str1, str2)計算萊文斯坦比。
  • 網絡拓撲結構-節點和邊特徵的簡介和R計算
    根據Sabidussi(1966)描述的標準計算方法,這一中心性定義為某節點到其它所有節點距離之和的倒數(見上文描述,網絡圖中節點間的「距離」(distance)這一概念,被定義為節點間最短路徑的長度,若不存在路徑則為正無窮;因此即為節點與圖中所有其他節點之間的最短路徑的長度之和的倒數),即:其中dist(v,u)是節點u,v∈V的捷徑距離。
  • 常見的距離算法和相似度計算方法
    1.5 馬氏距離(Mahalanobis distance): 表示點與一個分布之間的距離。它是一種有效的計算兩個未知樣本集的相似度的方法。與歐氏距離不同的是,它考慮到各種特性之間的聯繫(例如:一條關於身高的信息會帶來一條關於體重的信息,因為兩者是有關聯的),並且是尺度無關的(scale-invariant),即獨立於測量尺度。
  • Nature通訊:判別神經網絡間的個體差異——計算神經科學新工具
    該研究還指出在比較網絡結構差異性時,需要考慮對比多組而不是多個神經網絡間的區別。這對計算神經科學尤其是視覺模型研究具有啟發意義。),可以計算判別馬和卡車的神經網絡的差異,偏離右圖中的斜線越遠,兩個神經網絡的差異越大。
  • 一文學會網絡分析——Co-occurrence網絡圖在R中的實現
    第二種數據格式是鄰接矩陣,物種間相關性計算得到的通常為此種形式。第三種為邊列表(edgelist),共兩列數據,分別代表網絡內的節點名稱,每一行代表這兩個節點間存在著聯繫。各網絡參數計算方法及意義參見igraph.org官方幫助文檔。
  • 考研數學考前預測重點題型之向量
    向量是線性代數的抽象部分,是求解線性方程組的基礎,這部分主要定義了向量組的線性相關性、等價向量組、向量組的極大線性無關組和秩以及向量空間的概念,給出了向量組線性相關性的判定等相關理論.這一部分在考試中客觀題和主觀題都經常會考到,但是這一部分往往是同學們的弱點,因為既抽象且概念性質較多.同學們在考前把基本概念和原理再著重看一下.
  • 使用Seaborn和Pandas進行相關性分析和可視化
    這不僅可以幫助我們查看哪些要素是線性相關的,而且如果要素之間的相關性很強,我們可以將其刪除以防止信息重複。您如何衡量相關性?在數據科學中,我們可以使用r值,也稱為Pearson的相關係數。 這可測量兩個數字序列(即列,列表,序列等)之間的相關程度。r值是介於-1和1之間的數字。
  • 卡方檢驗和精確概率法及兩兩比較
    對於分類變量,採用例數(百分比)的形式描述,組間比較採用χ2檢驗或精確概率法,當組間總的有統計學差異,進一步採用χ2檢驗或精確概率法進行兩兩比較,兩兩比較的P值需採用Boferroni法(也可以選擇其它方法)進行校正。