1
我想計算我的因變量y和我所有的x之間的相關性。我使用下面的代碼,一個變量與R中所有其他變量的相關性
cor(loan_data_10v[sapply(loan_data_10v, is.numeric)],use="complete.obs")
結果是一個相關矩陣。 我怎樣才能得到一列與我的變量y。
我想計算我的因變量y和我所有的x之間的相關性。我使用下面的代碼,一個變量與R中所有其他變量的相關性
cor(loan_data_10v[sapply(loan_data_10v, is.numeric)],use="complete.obs")
結果是一個相關矩陣。 我怎樣才能得到一列與我的變量y。
如果我們正在尋找'x'和'y'之間的cor
,那麼這兩個參數可以是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')的索引,得到的names
'X',並使用該指數,並應用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]])
謝謝!這行得通。我在cor中添加use =「complete.obs」,因爲我在每個變量中都有na值 –
'肺心病(load_data_10v) 'Y' 變量[ ,1]'? – r2evans
它給我一個錯誤「'x'必須是數字」,因爲不是我的數據集中的所有變量都是數字的 –
我的觀點:將'[,1]'添加到您的命令的外部/結尾處,添加'cor (...)[1]'。 – r2evans