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:
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
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:
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