日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用R进行相关性分析

發布時間:2023/12/10 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用R进行相关性分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基于R進行相關性分析

一、相關性矩陣計算:

[1] 加載數據:

  >data = read.csv("231-6057_2016-04-05-ZX_WD_2.csv",header=FALSE)

說明:csv格式的數據,header=FALSE 表示沒有標題,即數據從第一行開始。?

[2] ?查看導入數據的前幾行,

? ? ? >head(data)

  

[3] 刪除數據的7,8列,都是0

  >data = data[1:6]

  >head(data)

?  

[4] 計算相關性矩陣(可以自己指定采用的方法,"pearson", "kendall", "spearman")

  >cor_matr = cor(data)

  >cor_matr

  ?

?

二?相關系數的顯著性水平(Correlation significance levels (p-value)

  使用Hmisc 包,不僅可以計算相關性矩陣,還可以計算對應的顯著性水平

[1] 安裝包 Hmisc (依賴包也會一并安裝,lib代表安裝包的路徑)

  >install.packages("Hmisc",lib="E:/Program Files/R/R-3.3.0/library/")

[2] 加載包

  >library(Hmisc)

[3] 計算相關性和顯著水平 (as.matrix(data) 表示將data轉換成矩陣)

  >rcorr(as.matrix(data))

    ?

輸出說明:

???????? r :第一個矩陣為相關性矩陣

???????? n :? 處理數據的總記錄數(行數)

???????? P :? 顯著性水平矩陣(越小說明越顯著)

?

三、可視化相關性分析

  • symnum() function
  • corrplot() function to plot a correlogram
  • scatter plots
  • heatmap

[1] 使用 symnum() 函數實現可視化 (cor_matr 是我們上文中cor()函數計算出來的相關性矩陣)

? ? ? ? ?>symnum(cor_matr)

    

???????? 符號說明:在輸出的最后一行,說明了符號的意義,例如 [0.9 , 0.95) 這個區間使用 * 表示。其他符號類似

[2] 使用 corrplot() 函數實現可視化(這里需要使用到corrplot包,沒有安裝的需要安裝)

? ? ? ? > library(corrplot)

? ? ? ? ?>corrplot(cor_matr, type="upper", order="hclust", tl.col="black", tl.srt=45)

????????

???????? 輸出說明:用不同顏色表示了相關性的強度,根據最右邊的顏色帶來看,越接近藍色說明相關性越高。其中圓形的大小也說明了行慣性的大小。

[3] 使用 PerformanceAnalytics 包進行可視化

? ? ? ? ?>library(PerformanceAnalytics)

? ? ? ? ?>chart.Correlation(data,histogram = TRUE,pch=19)

?    

???????? 輸出說明:

    •   對角線給出了變量自身的分布
    •   下三角形(對角線的左下方),給出了兩個屬性的散點圖,可以看到第二行第一列的散點圖顯示出v1和v2具有很高的線性相關性
    •   上三小形(對角線的右上方),數字表示連個屬性的相關性值,型號表示顯著程度(星星越多表明越顯著)

?

[4] heatmap 可視化

? ? ? ? ?>col = colorRampPalette(c("blue", "white", "red"))(20)

? ? ? ? ?>heatmap(x = cor_matr, col = col, symm = TRUE)

?    

  說明:第一行是制作調色板,紅色表示相關性最高。第二行參數說明,x: 相關性矩陣(前文已經計算),col: 調色板,symm: 以對稱矩陣的形式顯示(可以看到畫出來的圖是中心對稱的,不過前提是輸入的矩陣是方陣)

?

?

參考:

[1] Correlation matrix : A quick start guide to analyze, format and visualize a correlation matrix using R software

http://www.sthda.com/english/wiki/correlation-matrix-a-quick-start-guide-to-analyze-format-and-visualize-a-correlation-matrix-using-r-software

[2] Significance of the Correlation Coefficient

http://janda.org/c10/Lectures/topic06/L24-significanceR.htm

[3] Installing R packages

https://www.r-bloggers.com/installing-r-packages/

?

轉載于:https://www.cnblogs.com/fanling999/p/5857122.html

總結

以上是生活随笔為你收集整理的使用R进行相关性分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。