[R-es] ¿Alguna explicación para este fenómeno? (Relativo al uso de memoria)
Hola, ¿qué tal? Al final he descubierto el motivo del problema. Cierto que esperaba cierto nivel de _overhead_, pero nunca tantÃsimo. Por mucho _overhead_ que haya, no se pasa de 7MB a 5GB. El problema era que (a pesar de mi opción stringsAsFactors = F) los niveles de los factores se copiaban Ãntegros en cada una de las columnas de tipo factor de cada una de las tablas resultantes. Aunque no se usasen. He convertido los factores a caracter, he vuelto a trocear el df resultante y el resultado ha sido:
object.size(empresas)
33052680 bytes
object.size(loans)
3813944 bytes Es decir, con _overhead_ el tamaño del objeto resultante ha crecido en un orden de magnitud (asumible), no en tres o cuatro (no asumible). ¿Seré yo el único al que los dichosos factores le han hecho perder horas y horas de trabajo? Salud, Carlos J. Gil Bellosta http://www.datanalytics.com El dÃa 13 de junio de 2013 20:54, Marcuzzi, Javier Rubén <javier.ruben.marcuzzi en gmail.com> escribió:
Estimados ¿que pasa con opciones como bigdata o semejantes? TendrÃa que probar, leer, etc., pero puede ser que algún algoritmo distinto solucione esos problemas. Recuerdo una presentación que creo que la realizó alguno de la lista donde utilizaba millones de datos, eran de aeropuertos, tráfico aéreo, algo de eso habÃa leÃdo en una oportunidad. Javier Marcuzzi -----Original Message----- From: Jose Luis Cañadas Sent: Thursday, June 13, 2013 3:42 PM To: r-help-es en r-project.org Subject: Re: [R-es] ¿Alguna explicación para este fenómeno? (Relativo al uso de memoria) Interesante... y preocupante. No propuso alguien, no hace mucho, reescribir R desde el principio por este tipo de cosas? El 13/06/13 20:04, Carlos Ortega escribió:
Hola, Si este comportamiento se ve con cualquier data.frame que luego conviertas a lista:
v <- 1:10 w <- split(v, 1:2) w
$`1` [1] 1 3 5 7 9 $`2` [1] 2 4 6 8 10
object.size(v)
88 bytes
object.size(w)
464 bytes
object.size(w[[1]])
72 bytes Y he encontrado una explicación que entiendo parcialmente está aquÃ: http://stackoverflow.com/questions/15848590/confusing-size-of-objects-in-r/15850414#15850414 Saludos, Carlos Ortega www.qualityexcellence.es El 13 de junio de 2013 18:35, Carlos J. Gil Bellosta <gilbellosta en gmail.com>escribió:
Hola, ¿qué tal? Tengo un df relativamente chiquito:
dim(loans)
[1] 15172 22
object.size(loans)
7488144 bytes Sin embargo, empresas <- split(loans, loans$number_id) length(empresas) #8748 object.size(empresas) # 50643907728 bytes Es decir, el objeto resultante de partir un df de 15000 filas en 8700 dfs ocupa 5GB. ¿Alguna idea de por qué ocurre esto? (Uso R 3.0.1 en un Xubuntu 12.04 de 64 bits). Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
[[alternative HTML version deleted]]
_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es _______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es