如何计算r中多个变量之间的相关性


量化两个变量之间关系的一种方法是使用Pearson 相关系数,它是两个变量之间线性关联的度量它始终采用 -1 和 1 之间的值,其中:

  • -1 表示两个变量之间完全负线性相关
  • 0 表示两个变量之间不存在线性相关
  • 1 表示两个变量之间存在完全正线性相关

本教程以以下数据框为例,介绍如何计算 R 中多个变量之间的相关性:

 #create data frame
df <- data.frame(a <- c(2, 3, 3, 5, 6, 9, 14, 15, 19, 21, 22, 23),
                 b <- c(23, 24, 24, 23, 17, 28, 38, 34, 35, 39, 41, 43),
                 c <- c(13, 14, 14, 14, 15, 17, 18, 19, 22, 20, 24, 26),
                 d <- c(6, 6, 7, 8, 8, 8, 7, 6, 5, 3, 3, 2))

示例 1:两个变量之间的相关性

下面的代码展示了如何计算数据框中两个变量之间的相关性:

 cor(df$a, df$b)

[1] 0.9279869

示例 2:多个变量之间的相关性

下面的代码展示了如何计算数据框中三个变量之间的相关性:

 cor(df[, c(' a ', ' b ', ' c ')])

          ABC
a 1.0000000 0.9279869 0.9604329
b 0.9279869 1.0000000 0.8942139
c 0.9604329 0.8942139 1.0000000

结果解释方式如下:

  • ab之间的相关性为 0.9279869。
  • ac之间的相关性为 0.9604329。
  • bc之间的相关性为 0.8942139。

示例 3:所有变量之间的相关性

下面的代码展示了如何计算数据框中所有变量之间的相关性:

 cor(df)

           abcd
a 1.0000000 0.9279869 0.9604329 -0.7915488
b 0.9279869 1.0000000 0.8942139 -0.7917973
c 0.9604329 0.8942139 1.0000000 -0.8063549
d -0.7915488 -0.7917973 -0.8063549 1.0000000

示例 4:仅数值变量之间的相关性

以下代码显示如何计算数据框中仅数字变量之间的相关性:

 cor(df[, unlist ( lapply (df, is. numeric ))])

           abcd
a 1.0000000 0.9279869 0.9604329 -0.7915488
b 0.9279869 1.0000000 0.8942139 -0.7917973
c 0.9604329 0.8942139 1.0000000 -0.8063549
d -0.7915488 -0.7917973 -0.8063549 1.0000000

示例 5:可视化相关性

以下代码演示了如何创建成对图 – 一种允许您可视化变量的每个成对组合之间的关系的图:

 #load psych package
library(psych)

#create pairs plot
peers. panels (df)

其他资源

如何在 R 中计算偏相关
如何计算 R 中的点双列相关性
如何计算R中的滑动相关性

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注