Skip to content

[R-es] Uso de memoria en R.

6 messages · Pedro Herrero Petisco, Isidro Hidalgo, Javier Marcuzzi +1 more

#
Hola a todos.
Tengo un problema y quería saber si hay alguna solución más allá de ampliar
la memoria del ordenador.

El caso es que tengo un script en el que voy generando datos... y al final
tengo unos ficheros enormes que tarde o temprano me dan errores de memoria
(en especial cuando los exporto a excel con XLConnect)

Yo suponía que si en R borraba una variable con rm() el espacio de memoria
que usaba R para almacenar esa variable se "liberaba" pero haciendo un
seguimiento con Adminsitrador de Tareas de Windows veo que no es así... y
que sólo se vacía cuando cierro y abro de nuevo el programa

Como dato deciros que uso R-Studio y la versión de R es la 3.1.3

¿Hay alguna manera de tratar con este tema de memoria?

Muchas gracias
#
Hola Pedro,

Después de utilizar "rm()" llama al "grabage collector" .... "gc()", para
asegurar que se ha liberado el espacio...

Saludos,
Carlos Ortega
www.qualityexcellence.es

El 20 de marzo de 2015, 12:54, Pedro Herrero Petisco <
pedroherreropetisco en gmail.com> escribió:

  
    
#
Y aún así veremos si puedes apañarte...
R no es muy buen gestor de memoria.
Además de lo que te ha dicho Carlos, lo mejor es "programar bien", sabiendo
cuando R hace copias de los objetos (cosa que hace muy a menudo), para
evitarlo al máximo.
Otra cosa que puede hacerse es "adelgazar los objetos" si no necesitas mucha
de la información que contienen. Por ejemplo, si haces un glm() puede que
sólo te interesen los coeficientes, que puedes guardar en un vector, y
deshacerte del objeto glm() entero.
Suerte.

Isidro Hidalgo Arellano
Observatorio Regional de Empleo
Consejería de Empleo y Economía
http://www.jccm.es
#
Estimado Pedro Herrero Petisco

Aparte de los aportes de los otros integrantes de la lista diría que puedes
intentar lo mismo desde R, me refiero a no usar Rstudio y analizar la
memoria mientras se ejecuta el script. Puede haber un problema en Rstudio,
hace dos semanas me encontré con un inconveniente, no entendía que pasaba,
harto y cansado como jugando copie y pegue el código a R desde Rstudio y el
problema desapareció, reinicié la computadora y realicé la misma prueba, no
tengo ni idea que pasó, pero Rstudio da error y R no.

Javier Rubén Marcuzzi

El 20 de marzo de 2015, 9:19, Isidro Hidalgo <ihidalgo en jccm.es> escribió:

  
  
#
Hola,

También, puedes probar un "profiler" y ver el detalle de cada línea de tu
programa.

https://github.com/hadley/lineprof

Saludos,
Carlos Ortega
www.qualityexcellence.es

El 20 de marzo de 2015, 14:40, Javier Marcuzzi <
javier.ruben.marcuzzi en gmail.com> escribió:

  
    
#
Muchas gracias a todos.
Probaré lo que me decís :-)
El 20/3/2015 15:09, "Carlos Ortega" <cof en qualityexcellence.es> escribió: