R中一个变量与另一个变量的相关性

时间:2017-08-26 05:37:13

标签: r correlation

我想计算我的因变量y和我所有的x之间的相关性。我使用下面的代码,

   cor(loan_data_10v[sapply(loan_data_10v, is.numeric)],use="complete.obs")

结果是相关矩阵。 我怎么能用变量y得到一列。

1 个答案:

答案 0 :(得分:7)

如果我们在' x'之间寻找cor和' y',这两个参数可以是vectormatrix。使用可重现的例子,比如mtcars并假设' y'是' mpg'和' x'其他变量(' mpg'是第一列,因此我们将mtcars[-1]用于' x')

cor(mtcars[-1], mtcars$mpg) 
#          [,1]
#cyl  -0.8521620
#disp -0.8475514
#hp   -0.7761684
#drat  0.6811719
#wt   -0.8676594
#qsec  0.4186840
#vs    0.6640389
#am    0.5998324
#gear  0.4802848
#carb -0.5509251

如果我们有numeric/non-numeric列,请创建numeric列的索引(' i1'),获取' x'的names并且' y'使用此索引的变量并应用cor

i1 <- sapply(loan_data_10v, is.numeric)
y1 <- "dep_column" #change it to actual column name
x1 <- setdiff(names(loan_data_10v)[i1], y1)
cor(loan_data_10v[x1], loan_data_10v[[y1]])