我正在使用R在大小約爲10,000 x 15,000(事件x樣本)的非常大的數據矩陣上運行相關性。該數據集包含浮點值,範圍從-15:15,NA,NaN,inf和-inf。爲了簡化問題,我選擇了一次處理兩行矩陣,將它們稱爲vector1,vector2。命令如下:R cor(),method =「pearson」返回NA,但method =「spearman」返回值。爲什麼?
CorrelationSpearman = cor(vector1,vector2, method="spearman",use="pairwise.complete.obs")
CorrelationPearson = cor(vector1,vector2,method="pearson",use="pairwise.complete.obs")
對於矩陣中的大多數但不是所有的行矢量,我得到CorrelationPearson = NA。 CorrelationSpearman值似乎沒有問題。我已經檢查過矩陣尺寸是否正確,並且我已經對可以正常工作的較小數據運行測試。發生這種情況的原因有哪些?
'Inf'會導致'皮爾森'問題。檢查cor(c(1:3,Inf),1:4,method =「pearson」); cor(c(1:3,Inf),1:4,method =「spearman」)。我認爲'Spearman's'可以'Inf'排列 – user20650 2014-11-20 19:26:46