我想计算我的因变量y和我所有的x之间的相关性。我使用下面的代码,
cor(loan_data_10v[sapply(loan_data_10v, is.numeric)],use="complete.obs")
结果是相关矩阵。 我怎么能用变量y得到一列。
答案 0 :(得分:7)
如果我们在' x'之间寻找cor
和' y',这两个参数可以是vector
或matrix
。使用可重现的例子,比如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]])