Asunto: [R-es] Cargar csv de 16GB en R
Probablemente la mejor forma de trabajar esto es Introduciendo los datos
dentro de Hadoop o alguna base de datos NoSQL como MongoDB. Ambos tienen
packages con los que se puede trabajar desde R. La ventaja de esta
aproximación es que reduces la demanda de recursos de parte del sistema. En
buena lid, puedes pasar los procesos a ambos y trabajar desde Hadoop o
MongoDB. Nosotros estamos trabajando con archivos de unos 19GB con Mongo,
son aproximadamente unos 70 millones de registros. Mongo los procesa muy
rapidamente. Se supone que Hadoop lo hace aún más rápido. Por su parte,
para evitar trabajar con toda la información realizamos mapReduce y otros
procesamientos desde Python para que a R solo le llegue el Tidy Data
necesario para los análisis estadísticos que requerimos. Por ahora esto ha
funcionado bastante bien.
2014-06-04 9:21 GMT-06:00 <r-help-es-request@r-project.org>:
> Envíe los mensajes para la lista R-help-es a
> r-help-es@r-project.org
>
> Para subscribirse o anular su subscripción a través de la WEB
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
> O por correo electrónico, enviando un mensaje con el texto "help"
en
> el asunto (subject) o en el cuerpo a:
> r-help-es-request@r-project.org
>
> Puede contactar con el responsable de la lista escribiendo a:
> r-help-es-owner@r-project.org
>
> Si responde a algún contenido de este mensaje, por favor, edite la
> linea del asunto (subject) para que el texto sea mas especifico que:
> "Re: Contents of R-help-es digest...". Además, por favor, incluya
en
> la respuesta sólo aquellas partes del mensaje a las que está
> respondiendo.
>
>
> Asuntos del día:
>
> 1. Re: error de incompatible methods (Marta valdes lopez)
> 2. Re: Cargar csv de 16GB en R (Eduardo Bieñkowski)
> 3. Re: Cargar csv de 16GB en R (Joan Carmona)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 4 Jun 2014 16:56:30 +0200
> From: Marta valdes lopez <martavaldes85@gmail.com>
> To: daniel <daniel319@gmail.com>, r-help-es@r-project.org
> Subject: Re: [R-es] error de incompatible methods
> Message-ID:
> <CAE0cxbHeXHghwM5U7y_g0UkZB5X>
035uN-Hq7Ru2RTXqNpy1aw@mail.gmail.com>
> Content-Type: text/plain
>
> Hola ,
>
> Ya esta solucionado, al final añadi DBx$Time<-times(DBx$Time) y me
acepto
> todo el script.
>
> Muchas gracias por vuestra ayuda y tiempo.
>
> Un saludo
>
>
> El 4 de junio de 2014, 15:29, daniel <daniel319@gmail.com> escribió:
>
> > Marta,
> >
> > No te puedo asegurar que la respuesta que sigue sirva para resolver el
> > problema, al fin y al cabo no enviaste un ejemplo reproducible para
poder
> > trabajarlo con mayor comodidad y seguridad.
> >
> > Al leer read.csv(filename, sep=",",header=TRUE) no le
dijistes a read.csv
> > que considere stringsAsFactors = FALSE por lo que consideró a Time no
un
> > character con la forma "20:02:12", sino un factor.
> >
> > En un e-mail anterior la estructura de Time lo indicaba como un
factor.
> >
> > Usas la función time de la librerÃa chron. Desconozco si funciona
> > DBx$Time>minTime, por lo que dices no y es lógico que asà sea ya
que
> > class(DBx$Time) me parece que es un factor y class(minTime) es de
clase
> > times. Quizás si funcione as.character(DBx$Time) > minTime, o
mejor
> > convierte la columan Time a times con chron.
> >
> > Espero te sirva,
> >
> > Daniel Merino
> >
> >
> >
> > El 4 de junio de 2014, 9:55, Jorge I Velez
<jorgeivanvelez@gmail.com>
> > escribió:
> >
> > Hola Marta,
> >>
> >> A lo mejor en tu sesion anterior tenias un objeto que ahora ya no
esta.
> >> Mi sugerencia es intentar ejecutar el script en una sesion nueva,
y
> luego
> >> sobre esa sesion a ver que pasa.
> >>
> >> Por cierto, para crear subconjuntos de datos (como en tu caso)
sugeriria
> >> utilizar la funcion subset().
> >>
> >> Saludos,
> >> Jorge.-
> >>
> >>
> >>
> >> 2014-06-04 22:51 GMT+10:00 Marta valdes lopez
<martavaldes85@gmail.com
> >:
> >>
> >> Hola Daniel, si perdona di a responder directamente y no me di
cuenta.
> >>>
> >>> Ya se donde esta el error, pero queria preguntar si a puede
ser que mi
> R
> >>> funcione mal o algo porque esta manhana ejecute mi script y
funciono
> >>> perfectamente y ahora volvi a ejecutarlo y me volvio a dar el
mismo
> >>> problema de ayer , despues de reiniciar y demas el tinnR y el
R, no se
> si
> >>> me vacila o es que tengo algo mal en realidad.
> >>>
> >>> Despues el error esta en los sÃmbolos o algo com el tiempo
> >>>
> >>> DBfishing<- na.omit(DBx[(DBx$calcSpeed<=speedFishing
&
> >>> DBx$distHb>distHbRule & DBx$Time>minTime &
DBx$Time<=maxTime),])
> >>>
> >>> Porque lo ejecute por separado y me funcione pero al poner el
tiempo no
> >>> me
> >>> funciona y me sale el warning message, mi pregunta es si com
el tiempo
> >>> hay
> >>> que utilizar otros sÃmbolos de < o > diferentes o algo
.
> >>>
> >>> Pongo el script entero que utilice y funciono hasta donde me
dio error:
> >>>
> >>> setwd("C:/Users/Marta/Desktop/DB")
> >>> library(chron)
> >>> library(xlsx)
> >>> filename<-"univerest_50.csv"
> >>> DBxy<-read.csv(filename, sep=",",header=TRUE)
> >>> DBx<-DBxy
> >>>
names(DBx)<-c("Boat","DateTime","TimeDiff",
"Latitude", "Longitude",
> >>> "Course", "Speed", "distNm",
"calcSpeed", "calcCourse", "distHb",
> >>> "Harbour", "idTrip","vmsAngle",
"calcAngle", "vmsLeg", "calcLeg",
> >>> "Trip_vmsLeg", "Trip_calcLeg",
"lengthTrip", "lengthTrip_vmsLeg",
> >>> "lengthTrip_calcLeg","Time",
"Date")
> >>>
> >>> #Formatting date and time variables
> >>> DBx$Date<-strptime(DBx$Date, "%d-%m-%Y")
###Monicap use ;
> >>> other use Y
> >>> DBx$Year<-as.POSIXlt(DBx$Date)$year+1900
> >>>
> >>> DBx$Boat<-gsub("^\\s+|\\s+$", "",
DBx$Boat)
> >>> #Read file with boat codes and gears
> >>> codeBoats<- read.csv("CODES_2002-2010New.csv",
> >>> sep=",",header=TRUE) #Laptop
> >>> codeBoats$CODIGO<-gsub("^\\s+|\\s+$",
"", codeBoats$CODIGO)
> >>> #Assigning a Fishing license based on Boat and Year
> >>> DBx$gear<-codeBoats$Lic[match(paste(DBx$Boat,DBx$Year),
> >>> paste(codeBoats$CODIGO,codeBoats$Year))]
> >>> ddd<- DBx[DBx$calcSpeed %in% NA,]
> >>> z<-length(ddd$gear) #idem
> >>> z0<-length(DBx$gear)
> >>>
> >>> ######PoleLine analyses / MAY 2013 #######Changes are:
harbour with
> >>> speed
> >>> rule (<rest)
> >>> #Define GEAR HERE based on list above. Analysing BLL boats
> >>> DBx <- DBx[DBx$gear %in% c("PoleLine"),]
> >>> z1<-length(DBx$gear)
> >>> z1
> >>> #defining speed and distance limits
> >>> speedFishing<-2.0 #less or equal to, in knots
(NEW MAY 2013
> >>> reduced from 5.3)
> >>>
> >>> speedHarb<-1.0
> >>> distHbRule<-3.0 #greater than, in nautical miles nm
> >>>
> >>> speedSteam<-2.0 #greater than, in knots
> >>> minTime<-times(c("05:59:59")) #usual
beginning of fishing
> >>> operations
> >>> maxTime<- times(c("20:59:59"))
#usual finishing of fishing
> >>> operations
> >>> #Selecting Harbour
> >>> DBharbour<- na.omit(DBx[DBx$distHb<=distHbRule
&
> >>> DBx$calcSpeed<=speedHarb,])
> >>> DBharbour$State<-"Harbour" #MONICAP=
10618; UNIVER1= ;
> >>> UNIVER2= ;
> >>> UNIVEREST= 1028
> >>> z2<-length(DBharbour$State)
> >>> write.table(DBharbour, file > >>>
paste("C:/Users/Marta/Desktop/Results/",filename, sep=""),
append = F,
> >>> quote = F, sep = ",", dec = ".",
row.names = F, col.names = T)
> >>>
> >>> #Selecting Steaming
> >>> DBsteaming<-
na.omit(DBx[(DBx$calcSpeed>speedFishing) |
> >>> (DBx$distHb<=distHbRule & DBx$calcSpeed>speedHarb) |
> >>> (DBx$calcSpeed<=speedFishing &
DBx$distHb>distHbRule),])
> >>> DBsteaming$State<- "Steaming" #MONICAP=
88398; UNIVER1= ;
> >>> UNIVER2> >>> ; UNIVEREST= 53748
> >>> DBsteaming$Harbour<-""
> >>> z4<-length(DBsteaming$State)
> >>> ##NEW MAY 2013##BLL", "BLL /
HL##MONICAP=45461, GEAR(NA)=;
> >>> UNIVER1=116200 ; UNIVER2=200965; UNIVEREST=0
> >>> write.table(DBsteaming, file > >>>
paste("C:/Users/Marta/Desktop/Results/",filename, sep=""),
append = T,
> >>> quote = F, sep = ",", dec = ".",
> >>> row.names = F, col.names = F)
> >>>
> >>> #Selecting Fishing #aqui el error
> >>> DBfishing<-
na.omit(DBx[(DBx$calcSpeed<=speedFishing &
> >>> DBx$distHb>distHbRule & DBx$Time>minTime &
DBx$Time<=maxTime),])
> >>> DBfishing$State<-"Fishing" #MONICAP=
43996; UNIVER1= ;
> UNIVER2> >>> ;
> >>> UNIVEREST= 19960
> >>> ##NEW MAY 2013##BLL", "BLL /
HL##MONICAP=8506, GEAR(NA)=;
> >>> UNIVER1=28417 ; UNIVER2=38266; UNIVEREST=0
> >>> DBfishing$Harbour<-""
> >>> z5<-length(DBfishing$State)
> >>> write.table(DBfishing, file > >>>
paste("C:/Users/Marta/Desktop/Results/",filename, sep=""),
append = T,
> >>> quote = F, sep = ",", dec = ".",
> >>> row.names = F, col.names = F)
> >>>
> >>> Muchas gracias, un saludo
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> El 3 de junio de 2014, 16:45, daniel
<daniel319@gmail.com> escribió:
> >>>
> >>> > Marta,
> >>> >
> >>> > Primero, responde a la lista, otros pueden ayudarte mejor
que yo, y a
> >>> > algunos les puede resultar de interés este intercambio.
> >>> >
> >>> > Segundo. evidentemente los datos tienen una estructura
especial, por
> lo
> >>> > que puedo ver los datos estan en una lista que contiene
otras listas
> y
> >>> > data.frame. Alguno de los errores que recibes es por
intentar
> >>> operaciones
> >>> > sobre datos de distintas clases, y factores. Te sugiero
que para
> >>> entender
> >>> > mejor que es lo que lograste importar a R apliques str a
las listas o
> >>> > data.frame que tienes, por ejemplo str(DBx).
> >>> >
> >>> > Tercero, reproducible significa que no estoy sentado
enfrente de tu
> >>> > ordenador sino del mio y para poder ayudarte necesito
poder hacer lo
> >>> que tu
> >>> > intentas. Al copiar lo que te parece interesante has
dejado afuera
> >>> parte de
> >>> > la estructura que resulta necesaria para poder leer los
datos, tu
> >>> ejemplo
> >>> > me da error cuando lo que espero son datos en una
estructura sea de
> >>> > data.frame, matriz o lista. Probablemente tu problema es
como lograr
> >>> de esa
> >>> > estructura leer los datos que te interesa y luego
convertir los de
> >>> tiempo a
> >>> > un formato acorde. Si no puedes mandar los datos inventa
algunos
> >>> > manteniendo la estructura que tienes. La recomendación
de
> >>> dput(head(DBx))
> >>> > no será de mucha ayuda si lo que tienes es una lista. Me
parece
> >>> recordar
> >>> > que en tu mensaje anterior leÃas los datos con
read.csv(DBx.csv), lo
> >>> cual
> >>> > me llevó a pensar que tenÃas un data.frame, pero parece
que lo que
> >>> tienes
> >>> > es otra cosa. ¿Cómo te aseguras que sea reproducible?
sencillo
> antes de
> >>> > enviarlo inicia una sesión de R y copia lo que vas a
enviar para
> ver si
> >>> > funciona bien.
> >>> >
> >>> > De nuevo, di que quieres hacer con tus datos (ejemplo:
ordenarlos por
> >>> > fecha, lugar y xxx), que estructura tienen (?str) y a
partir de allÃ
> >>> espero
> >>> > podamos ayudarte.
> >>> >
> >>> > Daniel Merino
> >>> >
> >>> >
> >>> >
> >>> >
> >>> > El 3 de junio de 2014, 12:00, Marta valdes lopez <
> >>> martavaldes85@gmail.com>
> >>> > escribió:
> >>> >
> >>> > Hola Daniel,
> >>> >>
> >>> >> Voy a intentar explicarme porque como soy
principiante en R hay
> cosas
> >>> que
> >>> >> ni se muy bien de donde salen.
> >>> >>
> >>> >> Aqui esta una parte de lo que me há salido cuando he
puesto el
> >>> >> dput(head(DBx)) (he copiado solo lo que pensaba que
podria
> interessar
> >>> para
> >>> >> explicar lo que quiero)
> >>> >>
> >>> >>
> >>> >> Time = structure(c(1219L,
> >>> >> 1279L, 1400L, 141L, 201L, 261L), .Label =
c("0:00:00 ", "0:01:00
> >>> ",
> >>> >> "0:02:00 ", "0:03:00 ",
"0:04:00 ", "0:05:00 ", "0:06:00 ",
> >>> >> "0:07:00 ", "0:08:00 ",
"0:09:00 ", "0:10:00 ", "0:11:00 ",
> >>> >> "0:12:00 ", "0:13:00 ",
"0:14:00 ", "0:15:00 ", "0:16:00 ",
> >>> >> "0:17:00 ", "0:18:00 ",
"0:19:00 ", "0:20:00 ", "0:21:00 ",
> >>> >> "0:22:00 ", "0:23:00 ",
"0:24:00 ", "0:25:00 ", "0:26:00 ",
> >>> >> class = "factor"), Date = structure(list(
> >>> >> sec = c(0, 0, 0, 0, 0, 0), min = c(0L, 0L,
0L, 0L, 0L,
> >>> >> 0L), hour = c(0L, 0L, 0L, 0L, 0L, 0L), mday =
c(11L,
> >>> >> 11L, 11L, 11L, 11L, 11L), mon = c(4L, 4L, 4L,
4L, 4L,
> >>> >> 4L), year = c(109L, 109L, 109L, 109L, 109L,
109L), wday > >>> c(1L,
> >>> >> 1L, 1L, 1L, 1L, 1L), yday = c(130L, 130L,
130L, 130L,
> >>> >> 130L, 130L), isdst = c(1L, 1L, 1L, 1L, 1L,
1L), zone > >>> c("AZOST",
> >>> >> "AZOST", "AZOST",
"AZOST", "AZOST", "AZOST"), gmtoff >
>>> >> c(NA_integer_,
> >>> >> NA_integer_, NA_integer_, NA_integer_,
NA_integer_,
> >>> NA_integer_
> >>> >> )), .Names = c("sec",
"min", "hour", "mday", "mon",
"year",
> >>> >> "wday", "yday",
"isdst", "zone", "gmtoff"), class =
c("POSIXlt",
> >>> >> "POSIXt")), Year = c(2009, 2009, 2009,
2009, 2009, 2009),
> >>> >> gear = structure(c(8L, 8L, 8L, 8L, 8L, 8L),
.Label = c("BLL",
> >>> >> "BLL / HL", "BLL / PLL",
"NotLic", "OUT", "PLL", "PLL /
> PoleLine",
> >>> >> "PoleLine", "PoleLine / PLL / BLL
/ Traps", "Troll"), class > >>> >>
"factor")), .Names = c("Boat",
> >>> >> "DateTime", "TimeDiff",
"Latitude", "Longitude", "Course",
"Speed",
> >>> >> "distNm", "calcSpeed",
"calcCourse", "distHb", "Harbour",
"idTrip",
> >>> >> "vmsAngle", "calcAngle",
"vmsLeg", "calcLeg", "Trip_vmsLeg",
> >>> >> "Trip_calcLeg", "lengthTrip",
"lengthTrip_vmsLeg",
> >>> "lengthTrip_calcLeg",
> >>> >> "Time", "Date", "Year",
"gear"), row.names = 923:928, class > >>> >>
"data.frame")
> >>> >>
> >>> >> Despues el script que he utilizado para el tiempo y
la hora:
> >>> >>
> >>> >> DBx$Date<-strptime(DBx$Date, "%d-%m-%Y")
###Monicap use ;
> >>> >> other use Y
> >>> >> DBx$Year<-as.POSIXlt(DBx$Date)$year+1900
> >>> >> DBx$Boat<-gsub("^\\s+|\\s+$",
"", DBx$Boat)
> >>> >>
> >>> >> Despues he definido mis reglas para definir los
diferentes estados
> de
> >>> los
> >>> >> barcos:
> >>> >>
> >>> >> speedFishing<-2.0
> >>> >> speedHarb<-1.0
> >>> >> distHbRule<-3.0
> >>> >> speedSteam<-2.0
> >>> >>
> >>> >> minTime<-times(c("05:59:59"))
#usual beginning of
> fishing
> >>> >> operations
> >>> >> maxTime<- times(c("20:59:59"))
#usual finishing of
> >>> fishing
> >>> >> operations
> >>> >>
> >>> >> Ypor ultimo cuando quiero definir el estado de
fishing haciendo una
> >>> >> condicional de que ponga fishing cuando una serie de
reglas se
> >>> cumplan, es
> >>> >> cuando me da el error:
> >>> >>
> >>> >> #Selecting Fishing
> >>> >> DBfishing<-
na.omit(DBx[(DBx$calcSpeed<=speedFishing &
> >>> >> DBx$distHb>distHbRule & DBx$Time>minTime
& DBx$Time<=maxTime),])
> >>> >>
> >>> >> Y el error:
> >>> >> Warning messages:
> >>> >> 1: In `[.data.frame`(DBx, (DBx$calcSpeed <=
speedFishing &
> DBx$distHb
> >>> > :
> >>> >> Incompatible methods ("Ops.factor",
"Ops.times") for ">"
> >>> >> 2: In `[.data.frame`(DBx, (DBx$calcSpeed <=
speedFishing &
> DBx$distHb
> >>> > :
> >>> >> Incompatible methods ("Ops.factor",
"Ops.times") for "<="
> >>> >>
> >>> >> Espero haberme explicado mejor.. muchas gracias por
tu tiempo!
> >>> >>
> >>> >> Un saludo
> >>> >>
> >>> >>
> >>> >>
> >>> >>
> >>> >>
> >>> >> El 3 de junio de 2014, 12:48, daniel
<daniel319@gmail.com>
> escribió:
> >>> >>
> >>> >> Marta,
> >>> >>>
> >>> >>> No entiendo lo que necesitas, pero aquà algunas
cosas que pueden
> >>> >>> orientar las consultas, o solucionar el problema:
> >>> >>>
> >>> >>> fecha_sys <- Sys.time()
> >>> >>> str(fecha_sys)
> >>> >>> strptime(fecha_sys, format="%Y-%m-%d
%H:%M:%S")
> >>> >>> str(strptime(fecha_sys, format="%Y-%m-%d
%H:%M:%S") )
> >>> >>> fecha <- format(Sys.time(),
"%d-%m-%Y")
> >>> >>> str(fecha)
> >>> >>> as.POSIXlt(fecha, format = "%d-%m-%Y")
> >>> >>> # Si tienes como fecha 03-06-2003 19. Aunque
serÃa mas simple si
> es
> >>> >>> 03-06-2003 19:00:00
> >>> >>> tu_fecha <- "03-06-2003 19"
> >>> >>> # quizás te interese explorar el paquete
lubridate
> >>> >>> library(lubridate)
> >>> >>> hours(1:24)
> >>> >>>
> >>> >>> Si lo anterior te sirve bien. Si no te sirve
puedes hacer un
> ejemplo
> >>> >>> reproducible tratando de explicar que es lo que
quieres,
> >>> proporcionando un
> >>> >>> grupo de datos por ejemplo dput(head(DBx)), y con
la parte de tu
> >>> script que
> >>> >>> te da problemas.
> >>> >>>
> >>> >>> Suerte,
> >>> >>>
> >>> >>> Daniel Merino
> >>> >>>
> >>> >>>
> >>> >>>
> >>> >>> 2014-06-03 8:41 GMT-03:00 Marta valdes lopez <
> >>> martavaldes85@gmail.com>:
> >>> >>>
> >>> >>>> Hola!!
> >>> >>>>
> >>> >>>> Estoy intentando ejecutar un script com
horas, al principio
> ejecute
> >>> >>>> estos
> >>> >>>> comandos
> >>> >>>>
> >>> >>>>
> >>> >>>> DBx$Date<-strptime(DBx$Date,
"%d-%m-%Y") ###Monicap
> use ;
> >>> >>>> other
> >>> >>>> use Y
> >>> >>>>
> >>> >>>> DBx$Year<-as.POSIXlt(DBx$Date)$year+1900
> >>> >>>>
> >>> >>>> if(filename!="monicap_50.csv")
{DBx$Time<-paste(DBx$Time, ":00",
> >>> >>>> sep="")}
> >>> >>>>
> >>> >>>> Pero me daba el error de que mi base de datos
tenia las horas en
> >>> formato
> >>> >>>> 00:00:00, entonces me anhadia dos ceros mas,
entonces no ejecute
> el
> >>> >>>> ultimo
> >>> >>>> comando y ahora al ejecutar este comando
desp+ues del anterior:
> >>> >>>>
> >>> >>>> DBfishing<-
na.omit(DBx[(DBx$calcSpeed<=speedFishing &
> >>> >>>> DBx$distHb>distHbRule &
DBx$Time>minTime & DBx$Time<=maxTime),])
> >>> >>>>
> >>> >>>> Me da este error:Warning messages:
> >>> >>>> 1: In `[.data.frame`(DBx, (DBx$calcSpeed
<= speedFishing &
> >>> DBx$distHb >
> >>> >>>> :
> >>> >>>> Incompatible methods
("Ops.factor", "Ops.times") for ">"
> >>> >>>> 2: In `[.data.frame`(DBx, (DBx$calcSpeed
<= speedFishing &
> >>> DBx$distHb >
> >>> >>>> :
> >>> >>>> Incompatible methods
("Ops.factor", "Ops.times") for "<="
> >>> >>>>
> >>> >>>> Las variables donde estan minTime y MaxTime
son estos comandos:
> >>> >>>>
> >>> >>>> minTime<-times(c("05:59:59"))
#usual beginning of fishing
> >>> >>>> operations
> >>> >>>> > maxTime<-
times(c("20:59:59")) #usual finishing of
> fishing
> >>> >>>> operations
> >>> >>>>
> >>> >>>> Alguien sabes que es lo que estoy haciendo
mal? si necessitais
> todo
> >>> el
> >>> >>>> script lo pongo sin problema.
> >>> >>>>
> >>> >>>> Muchas gracias, un saludo
> >>> >>>>
> >>> >>>> [[alternative HTML version deleted]]
> >>> >>>>
> >>> >>>>
_______________________________________________
> >>> >>>> R-help-es mailing list
> >>> >>>> R-help-es@r-project.org
> >>> >>>>
https://stat.ethz.ch/mailman/listinfo/r-help-es
> >>> >>>>
> >>> >>>
> >>> >>>
> >>> >>>
> >>> >>> --
> >>> >>> Daniel
> >>> >>>
> >>> >>
> >>> >>
> >>> >
> >>> >
> >>> > --
> >>> > Daniel
> >>> >
> >>>
> >>> [[alternative HTML version deleted]]
> >>>
> >>>
> >>> _______________________________________________
> >>> R-help-es mailing list
> >>> R-help-es@r-project.org
> >>> https://stat.ethz.ch/mailman/listinfo/r-help-es
> >>>
> >>>
> >>
> >
> >
> > --
> > Daniel
> >
>
> [[alternative HTML version deleted]]
>
>
>
> ------------------------------
>
> Message: 2
> Date: Wed, 4 Jun 2014 12:07:28 -0300
> From: Eduardo Bieñkowski <edukoski@gmail.com>
> To: Joan Carmona <jcmld@carmonarocha.com>
> Cc: r-help-es <r-help-es@r-project.org>
> Subject: Re: [R-es] Cargar csv de 16GB en R
> Message-ID:
> <
> CA+8CrM0s9CXmVK+76XMHqkHPayiTMJLJnTaz6XafDOX9xaddVQ@mail.gmail.com>
> Content-Type: text/plain
>
> Si pero que pasarÃa entonces si lo que se necesita hacer es minerÃa de
> datos con R, y queda un fichero enorme a pesar de darle todos los filtros y
> selecciones posibles?????
>
>
> El 4 de junio de 2014, 8:24, Joan Carmona <jcmld@carmonarocha.com>
> escribió:
>
> > Es cierto que R carga los objetos en memoria, pero ésta puede ser
> memoria
> > RAM + Virtual.
> > Yo he trabajado con data frames mayores que la memoria fÃsica. Es
cierto
> > que
> > esto ralentiza las operaciones.
> > Lo que marca realmente los lÃmites de la memoria es la versión del
> sistema
> > operativo y de R, que han de ser de 64 bits. En un sistema de 32 bits
el
> > direccionamiento teórico máximo es de 4 Gbytes, pero en un sistema
de
> 64
> > bits el lÃmite es de varios Tbytes. Teóricamente (y sólo
> teóricamente) se
> > podrÃa trabajar con objetos muy grandes, siempre que tengas
suficiente
> > espacio en disco.
> >
> > -----Mensaje original-----
> > De: r-help-es-bounces@r-project.org [mailto:
> > r-help-es-bounces@r-project.org]
> > En nombre de Isidro Hidalgo
> > Enviado el: miércoles, 04 de junio de 2014 11:39
> > Para: 'r-help-es'
> > Asunto: Re: [R-es] Cargar csv de 16GB en R
> >
> > ¿Memoria virtual y R? Por lo que tengo entendido, como ha dicho
Carlos
> > antes, R trabaja con la memoria fÃsica, por lo que nunca vas a poder
> > trabajar simultáneamente con objetos que requieran más memoria que
la
> RAM
> > de
> > tu equipo.
> > De hecho, bajo mi punto de vista, es el problema fundamental de R.
> > Si funcionara con memoria virtual... IGUAL HASTA ME CASABA CON ÉL, XD
> AsÃ
> > que, por favor, si alguien puede aclarar este asunto, lo agradecerÃa
> > enormemente...
> > Un saludo a todos.
> >
> > Isidro Hidalgo Arellano
> > Observatorio Regional de Empleo
> > ConsejerÃa de Empleo y EconomÃa
> > http://www.jccm.es
> >
> >
> >
> > > -----Mensaje original-----
> > > De: r-help-es-bounces@r-project.org [mailto:r-help-es-bounces@r-
> > > project.org] En nombre de Javier Marcuzzi Enviado el: miércoles,
04
> de
> > > junio de 2014 1:54
> > > Para: Joan Carmona
> > > CC: r-help-es; laura tomé
> > > Asunto: Re: [R-es] Cargar csv de 16GB en R
> > >
> > > Estoy de acuerdo con la observación de Joan, yo supe utilizar
formas
> > > para trabajar con más memoria de la configurada como base,
pero
> > > tengamos en cuenta que una vez importados los datos, cualquier
> > > operación estará entre la memoria fÃÂsica y la virtual,
es
> todo un
> > > desafÃÂo y dependerá del análisis estadÃÂstico (me
refiero a
> los
> > > algoritmos que ordenen al CPU).
> > >
> > > Mi experiencia cuándo trabaje con muchos datos y tocando los
> > > parámetros de memoria, en algo parecido a un modelo mixto, una
> > > variable 5 minutos de procesamiento, dos variables unos 15
minutos,
> > > ambas más una relación más de dos dÃÂas de
procesamiento,
> esa
> > > relación en solo una variable algo como una hora.
Básicamente
> podÃÂa
> > > por separado, pero cuándo sumaba algo al modelo de tiempos
> razonables
> > > pasaba a dos dÃÂas (medido en la pantalla de R porque pasaba
datos
> > > según procesaba - verbose=TRUE).
> > >
> > > Javier Marcuzzi
> > >
> > >
> > > El 3 de junio de 2014, 18:54, Joan Carmona
<jcmld@carmonarocha.com>
> > > escribió:
> > >
> > > > Hola Laura,
> > > >
> > > > Asumo que estás usando una versión de R de 64 bits, de
lo
> > > > contrario ya irÃÂas muy limitada por la versión, si
ésta
> fuera de 32
> > bits.
> > > >
> > > > R puede trabajar con objetos mayores que la memoria
fÃÂsica
> > > instalada,
> > > > gracias a la memoria virtual de la máquina.
> > > >
> > > > Pero hay que tener en cuenta que, en Windows, R limita la
memoria
> > > > disponible para una sesión de R. Para cambiar este
lÃÂmite, mira
> > > > los comandos memory.size y memory.limit
> > > >
> > > > Saludos,
> > > >
> > > > Juan Carmona
> > > >
> > > > -----Mensaje original-----
> > > > De: r-help-es-bounces@r-project.org [mailto:
> > > > r-help-es-bounces@r-project.org]
> > > > En nombre de laura tomé
> > > > Enviado el: martes, 03 de junio de 2014 19:37
> > > > Para: r-help-es@r-project.org
> > > > Asunto: [R-es] Cargar csv de 16GB en R
> > > >
> > > >
> > > >
> > > >
> > > > Hola,
> > > >
> > > > Estoy todavÃÂa dando mis primeros pasos en R y una de las
cosas que
> > > > tengo que hacer es trabajar con un csv de 16 GB. Consta de
10
> > > > columnas, 7 númericas He probado varias cosas entre ellas
los
> > > > paquetes 'colbycol', data.table, ff , etc, pero
nada, mi ordenador
> > > > de queda frito. Por cierto, tiene 8GB de RAM y Windows 8
> > > >
> > > > ¿Debo trocear previamente el csv,me recomendais algún
paquete
> en
> > > > especial, etc para trabajar con un fichero tan pesado, otra
> > > solución?...
> > > >
> > > > Muchas gracias
> > > > [[alternative HTML version deleted]]
> > > >
> > > > _______________________________________________
> > > > R-help-es mailing list
> > > > R-help-es@r-project.org
> > > > https://stat.ethz.ch/mailman/listinfo/r-help-es
> > > >
> > >
> > > [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es@r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es@r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
>
>
>
> --
> Eduardo
>
> [[alternative HTML version deleted]]
>
>
>
> ------------------------------
>
> Message: 3
> Date: Wed, 4 Jun 2014 17:20:59 +0200
> From: "Joan Carmona" <jcmld@carmonarocha.com>
> To: "=?UTF-8?Q?'Eduardo_Bie=C3=B1kowski'?="
<edukoski@gmail.com>
> Cc: 'r-help-es' <r-help-es@r-project.org>
> Subject: Re: [R-es] Cargar csv de 16GB en R
> Message-ID: <00a401cf8008$990689f0$cb139dd0$@carmonarocha.com>
> Content-Type: text/plain
>
> No soy experto en data mining con R, sé que existe algún paquete al
> respecto, pero no sé si R serÃa lo más adecuado para cantidades ingentes
> de datos…
>
> Saludos,
>
> Juan Carmona.
>
>
>
> De: Eduardo Bieñkowski [mailto:edukoski@gmail.com]
> Enviado el: miércoles, 04 de junio de 2014 17:07
> Para: Joan Carmona
> CC: Isidro Hidalgo; r-help-es
> Asunto: Re: [R-es] Cargar csv de 16GB en R
>
>
>
> Si pero que pasarÃa entonces si lo que se necesita hacer es minerÃa de
> datos con R, y queda un fichero enorme a pesar de darle todos los filtros y
> selecciones posibles?????
>
>
>
> El 4 de junio de 2014, 8:24, Joan Carmona <jcmld@carmonarocha.com
<mailto:
> jcmld@carmonarocha.com> > escribió:
>
> Es cierto que R carga los objetos en memoria, pero ésta puede ser memoria
> RAM + Virtual.
> Yo he trabajado con data frames mayores que la memoria fÃsica. Es cierto
> que
> esto ralentiza las operaciones.
> Lo que marca realmente los lÃmites de la memoria es la versión del
> sistema
> operativo y de R, que han de ser de 64 bits. En un sistema de 32 bits el
> direccionamiento teórico máximo es de 4 Gbytes, pero en un sistema de 64
> bits el lÃmite es de varios Tbytes. Teóricamente (y sólo teóricamente)
> se
> podrÃa trabajar con objetos muy grandes, siempre que tengas suficiente
> espacio en disco.
>
>
> -----Mensaje original-----
> De: r-help-es-bounces@r-project.org <mailto:
> r-help-es-bounces@r-project.org>
[mailto:r-help-es-bounces@r-project.org
> <mailto:r-help-es-bounces@r-project.org> ]
>
> En nombre de Isidro Hidalgo
> Enviado el: miércoles, 04 de junio de 2014 11:39
> Para: 'r-help-es'
>
> Asunto: Re: [R-es] Cargar csv de 16GB en R
>
> ¿Memoria virtual y R? Por lo que tengo entendido, como ha dicho Carlos
> antes, R trabaja con la memoria fÃsica, por lo que nunca vas a poder
> trabajar simultáneamente con objetos que requieran más memoria que la
> RAM de
> tu equipo.
> De hecho, bajo mi punto de vista, es el problema fundamental de R.
> Si funcionara con memoria virtual... IGUAL HASTA ME CASABA CON ÉL, XD AsÃ
> que, por favor, si alguien puede aclarar este asunto, lo agradecerÃa
> enormemente...
> Un saludo a todos.
>
> Isidro Hidalgo Arellano
> Observatorio Regional de Empleo
> ConsejerÃa de Empleo y EconomÃa
> http://www.jccm.es
>
>
>
> > -----Mensaje original-----
> > De: r-help-es-bounces@r-project.org <mailto:
> r-help-es-bounces@r-project.org> [mailto:r-help-es-bounces@r-
<mailto:
> r-help-es-bounces@r->
> > project.org <http://project.org> ] En nombre de Javier Marcuzzi
Enviado
> el: miércoles, 04 de
> > junio de 2014 1:54
> > Para: Joan Carmona
> > CC: r-help-es; laura tomé
> > Asunto: Re: [R-es] Cargar csv de 16GB en R
> >
> > Estoy de acuerdo con la observación de Joan, yo supe utilizar
formas
> > para trabajar con más memoria de la configurada como base, pero
> > tengamos en cuenta que una vez importados los datos, cualquier
> > operación estará entre la memoria fÃÂsica y la virtual, es
todo
> un
> > desafÃÂo y dependerá del análisis estadÃÂstico (me refiero a
> los
> > algoritmos que ordenen al CPU).
> >
> > Mi experiencia cuándo trabaje con muchos datos y tocando los
> > parámetros de memoria, en algo parecido a un modelo mixto, una
> > variable 5 minutos de procesamiento, dos variables unos 15 minutos,
> > ambas más una relación más de dos dÃÂas de procesamiento,
esa
> > relación en solo una variable algo como una hora. Básicamente
> podÃÂa
> > por separado, pero cuándo sumaba algo al modelo de tiempos
razonables
> > pasaba a dos dÃÂas (medido en la pantalla de R porque pasaba datos
> > según procesaba - verbose=TRUE).
> >
> > Javier Marcuzzi
> >
> >
> > El 3 de junio de 2014, 18:54, Joan Carmona <jcmld@carmonarocha.com
> <mailto:jcmld@carmonarocha.com> >
> > escribió:
> >
> > > Hola Laura,
> > >
> > > Asumo que estás usando una versión de R de 64 bits, de lo
> > > contrario ya irÃÂas muy limitada por la versión, si ésta
fuera
> de 32
> bits.
> > >
> > > R puede trabajar con objetos mayores que la memoria fÃÂsica
> > instalada,
> > > gracias a la memoria virtual de la máquina.
> > >
> > > Pero hay que tener en cuenta que, en Windows, R limita la memoria
> > > disponible para una sesión de R. Para cambiar este lÃÂmite,
mira
> > > los comandos memory.size y memory.limit
> > >
> > > Saludos,
> > >
> > > Juan Carmona
> > >
> > > -----Mensaje original-----
> > > De: r-help-es-bounces@r-project.org <mailto:
> r-help-es-bounces@r-project.org> [mailto:
> > > r-help-es-bounces@r-project.org <mailto:
> r-help-es-bounces@r-project.org> ]
> > > En nombre de laura tomé
> > > Enviado el: martes, 03 de junio de 2014 19:37
> > > Para: r-help-es@r-project.org
<mailto:r-help-es@r-project.org>
> > > Asunto: [R-es] Cargar csv de 16GB en R
> > >
> > >
> > >
> > >
> > > Hola,
> > >
> > > Estoy todavÃÂa dando mis primeros pasos en R y una de las cosas
que
> > > tengo que hacer es trabajar con un csv de 16 GB. Consta de 10
> > > columnas, 7 númericas He probado varias cosas entre ellas los
> > > paquetes 'colbycol', data.table, ff , etc, pero nada,
mi ordenador
> > > de queda frito. Por cierto, tiene 8GB de RAM y Windows 8
> > >
> > > ¿Debo trocear previamente el csv,me recomendais algún
paquete en
> > > especial, etc para trabajar con un fichero tan pesado, otra
> > solución?...
> > >
> > > Muchas gracias
> > > [[alternative HTML version deleted]]
> > >
> > > _______________________________________________
> > > R-help-es mailing list
> > > R-help-es@r-project.org <mailto:R-help-es@r-project.org>
> > > https://stat.ethz.ch/mailman/listinfo/r-help-es
> > >
> >
> > [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org <mailto:R-help-es@r-project.org>
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org <mailto:R-help-es@r-project.org>
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
>
>
> --
> Eduardo
>
>
> [[alternative HTML version deleted]]
>
>
>
> ------------------------------
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
> Fin de Resumen de R-help-es, Vol 64, Envío 9
> ********************************************
>
--
Michael A. Herradora Quesada
Sociólogo
[[alternative HTML version deleted]]