Мне было интересно, как я могу превратить это в формат Rcpp? Из-за проблемы с памятью метод as.matrix для R не работает
sparse.cor4 <- function(x){
n <- nrow(x)
cMeans <- colMeans(x)
covmat <- (as.matrix(crossprod(x)) - n*tcrossprod(cMeans))/(n-1)
sdvec <- sqrt(diag(covmat))
cormat <- covmat/tcrossprod(sdvec)
list(cov=covmat,cor=cormat)
}
Функция из этой ссылки: Запуск cor () (или любого другого варианта) над разреженной матрицей в R
Дополнительная информация : мне удалось создать разреженную матрицу размером 500kx500k с использованием rcpp, но мне нужно сопоставить эту разреженную матрицу, что было невозможно с R * cor()
из-за размера памятивот почему я спрашиваю, могу ли я преобразовать вышеуказанную функцию в режим Rcpp, чтобы получить корреляцию разреженной матрицы
Спасибо