📜  如何计算 R 中多个变量之间的相关性?

📅  最后修改于: 2022-05-13 01:55:52.155000             🧑  作者: Mango

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

在本文中,我们将讨论如何在 R 编程语言中计算多个变量之间的相关性。 Correlation 用于获得两个或多个变量之间的关系:

  • 如果两个变量之间没有相关性,则结果为 0
  • 如果两个变量之间存在正相关,则结果为 1
  • 如果两个变量之间存在负相关,则结果为 -1

让我们创建一个初始数据框:

R
# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),col4=c(1:10))
  
# display
data


R
# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),col4=c(1:10))
  
# correlation between col1 and col2
print(cor(data$col1,data$col2))
  
# correlation between col1 and col3
print(cor(data$col1,data$col3))
  
# correlation between col1 and col4
print(cor(data$col1,data$col4))
  
# correlation between col3 and col4
print(cor(data$col3,data$col4))


R
# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),
                col4=c(1:5,34,56,32,23,45))
  
# correlation between col1,col3 and col2
print(cor(data[, c('col1','col3','col2')]))
  
# correlation between col1,col4 and col2
print(cor(data[, c('col1','col4','col2')]))
  
# correlation between col2,col3 and col4
print(cor(data[, c('col2','col3','col4')]))


R
# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),
                col4=c(1:5,34,56,32,23,45))
  
# correlation in entire dataframe
print(cor(data))


输出:

col1 col2 col3 col4
1     1   11   21    1
2     2   12   22    2
3     3   13   23    3
4     4   14   24    4
5     5   15   25    5
6     6   16   26    6
7     7   17   27    7
8     8   18   28    8
9     9   19   29    9
10   10   20   30   10

方法 1:两个变量之间的相关性

在这种计算两个变量之间相关性的方法中,用户必须简单地从基数 R 调用 corr()函数,并传递所需的参数,这些参数将是需要计算相关性的变量的名称,并进一步说明将返回 R 编程语言中给定两个变量之间的相关细节。

例子:

在这里,在这个例子中,我们将创建一个 4 列 10 行的数据框,并使用 cor() 找到 col1 和 col2 之间的相关性、col1 和 col3 之间的相关性、col1 和 col4 之间的相关性以及 col3 和 col4 之间的相关性R编程语言中的函数。

R

# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),col4=c(1:10))
  
# correlation between col1 and col2
print(cor(data$col1,data$col2))
  
# correlation between col1 and col3
print(cor(data$col1,data$col3))
  
# correlation between col1 and col4
print(cor(data$col1,data$col4))
  
# correlation between col3 and col4
print(cor(data$col3,data$col4))

输出:

1
1
1
1

方法2:多个变量之间的相关性

在该方法中,用户必须调用cor()函数,然后在该函数中,用户必须将多个变量的名称以向量的形式作为参数传递,通过指定多个列名来获取多个变量之间的相关性在 R 编程语言中。

语法

cor(dataframe[, c('column1','column2',.,'column n')])

例子:

在这个例子中,我们将发现在 R 编程语言中使用 col1,col3 和 col2,col1,col4 和 col2 以及 col2,col3 和 col4 的 cor()函数之间的相关性。

R

# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),
                col4=c(1:5,34,56,32,23,45))
  
# correlation between col1,col3 and col2
print(cor(data[, c('col1','col3','col2')]))
  
# correlation between col1,col4 and col2
print(cor(data[, c('col1','col4','col2')]))
  
# correlation between col2,col3 and col4
print(cor(data[, c('col2','col3','col4')]))

输出:

col1 col3 col2
col1    1    1    1
col3    1    1    1
col2    1    1    1

         col1     col4     col2
col1 1.000000 0.787662 1.000000
col4 0.787662 1.000000 0.787662
col2 1.000000 0.787662 1.000000

         col2     col3     col4
col2 1.000000 1.000000 0.787662
col3 1.000000 1.000000 0.787662
col4 0.787662 0.787662 1.000000

方法3:所有变量之间的相关性

在这种计算给定数据帧中所有变量之间相关性的方法中,用户需要调用 cor()函数并将整个数据帧作为其参数传递,以获取给定数据帧中所有变量之间的相关性。 R 编程语言。

句法:

cor(dataframe)

例子:

在此示例中,我们将在 R 编程语言中找到给定数据框的所有列之间的相关性。

R

# create the dataframe with 4 columns
data=data.frame(col1=c(1:10),col2=c(11:20),
                col3=c(21:30),
                col4=c(1:5,34,56,32,23,45))
  
# correlation in entire dataframe
print(cor(data))

输出:

col1     col2     col3     col4
col1 1.000000 1.000000 1.000000 0.787662
col2 1.000000 1.000000 1.000000 0.787662
col3 1.000000 1.000000 1.000000 0.787662
col4 0.787662 0.787662 0.787662 1.0000