Skip to content
Prev 9706 / 15379 Next

[R-es] Cannot allocate vector of size

Antes de nada, me gustaría daros las gracias por toda vuestra ayuda.
He estado probando todo lo que me habéis dicho a la vez, y no hay manera, sigo teniendo el problema con el espacio. 
En cuanto al tamaño de la base de datos, es más grande de lo que puse, me equivoqué y puse el tamaño de una base anterior con la que estuve trabajando, la actual tiene 36866 filas x 6500 columnas.
He seguido todas vuestras recomendaciones (combinándolas) en diferentes dispositivos y sistemas operativos, pero no hay manera. De hecho el último intento fue haciendo los siguientes pasos en un sistema operativo Linux, con R 64 bits y en un servidor con 65Gb de RAM. 
1) He convertido la base de datos en una matriz "sparse" cuyo tamaño pasa de una matriz de 861.2Mb a una matriz de 10.2Mb
2) He eliminado todo lo que no es necesario de la función beta.pair dejándola en:library (betapart) # para que cargue la función betapart.core()
beta.pair <- function(x, index.family="sorensen"){       # test for a valid index     index.family <- match.arg(index.family, c('jaccard','sorensen'))           # test for pre-existing betapart objects       if (! inherits(x, "betapart")){         x <- betapart.core(x)         }           # run the analysis given the index       switch(index.family,                  sorensen = {                    beta.sim <- x$min.not.shared                                        pairwise <- list(beta.sim=as.dist(beta.sim))},                                    jaccard = {                    beta.jtu <- (x$min.not.shared)                                          pairwise <- list(beta.jtu=as.dist(beta.jtu))})           return(pairwise)          }
3) He ejecutado la función.matriz_distancias <- beta.pair (sparse_matrix, index.family="sorensen")
Y tras todos estos pasos me sigue dando el problema. Creo que ya solo me queda probar con los paquetes de R para gestión de Big Data como ff o bigmemory. 
¿Sabéis si las matrices que se guardan como bigmemory pueden manipularse con las mismas funciones que el resto?En concreto quiero saber si voy a poder calcular la matriz de distancias con beta.pair, y hacer un análisis cluster tipo UPGMA sobre esa matriz (la función agnes () o hclust()).
Saludos, Rubén