Что не так с
cc <- cor(trainDataNew)
?
Если вам нужен только нижний треугольник, вы можете использовать
cc2 <- cc[lower.tri(cc,diag=FALSE)]
Этот блогpost утверждает, что выполнил проблему аналогичного размера (чуть меньше) примерно за минуту.Их подход реализован в HiClimR::fastCor
.
library(HiClimR)
system.time(cc <- fastCor(dd, nSplit = 10,
upperTri = TRUE, verbose = TRUE,
optBLAS=TRUE))
Я еще не получил эту работу (не хватает памяти), но вам, возможно, повезет больше.Вам также следует обратить внимание на связь R с оптимизированным BLAS, например, см. здесь для MacOS.
Кто-то здесь сообщает о распараллеленной версии (код здесь , вместе с некоторыми разветвленными версиями)