[R-es] Reducción de tiempo en lectura de datos

Bengoechea Bartolomé Enrique (SIES 73) enrique.bengoechea en credit-suisse.com
Mie Dic 9 14:49:25 CET 2009


Hola,

Si los datos no cambian a menudo, la solución más sencilla es leerlos una vez en memoria con cualquiera de las opciones que te han comentado, y luego guardarlos en otro fichero distinto con el formato binario de R usando save(). Las lecturas posteriores las haces del nuevo fichero con load() y serán mucho más rápidas.

Otra opción es leer los datos usando el paquete "sqldf", que genera una base de datos SQLLite en un fichero temporal y luego la lee a R, lo que suele ser algo más rápido que la importación directa. Tienes un ejemplo aquí: http://code.google.com/p/sqldf/#Example_13._read.csv.sql

Un saludo,

Enrique

-----Original Message-----
Date: Tue, 8 Dec 2009 15:38:46 -0500
From: Jorge Ivan Velez <jorgeivanvelez en gmail.com>
Subject: [R-es] Reducción de tiempo en lectura de datos
To: R-help-es <r-help-es en r-project.org>
Message-ID:
	<317737de0912081238t34a2892bmb8cdec0439c5312d en mail.gmail.com>
Content-Type: text/plain

Buenas tardes para todos,

Utilizo R 2.10.0 Patched en Windows XP 32-bits con 4GB RAM en un procesador Intel Core 2 Duo de 2.4 GHz. En este momento estoy trabajando con una base de datos X de dimensión

R> dim(X)
[1] 297558     11

que se encuentra almacenada en formato ".txt" y que tiene 1 variable alfanumérica (identificador) y 10 numéricas. Estoy leyendo X via
read.table() y el tiempo tarda el sistema es:

R> system.time(X <- read.table(f, header = TRUE, sep= ","))
   user  system elapsed
  17.50    0.11   18.59

Me gustaría saber si alguien conoce alguna manera de reducir
(sustancialmente) este tiempo.

Muchas gracias,

                               Jorge Ivan Velez

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es