[R-es] Sobre data.table

MªLuz Morales mlzmrls en gmail.com
Vie Jun 19 20:34:49 CEST 2015


Hola, si, efectivamente yo lo que tengo es la cadena NA, vale, ya lo veo
claro... gracias

Con respecto a data.table, lo estoy usando porque en programas que tardaba
3 horas en ejecutarse usando data.table, tardaba muy pocos segundos usando
data.table, efectivamente era una tabla grande,con 2 millones de filas.

Gracias a todos por la ayuda que prestais a los que queremos (o tenemos)
que aprender R
 El 19/06/2015 17:24, "Carlos J. Gil Bellosta" <cgb en datanalytics.com>
escribió:

> Hola, ¿qué tal?
>
> Estoy con Olivier. Es probable que hayas leído datos en que aparecían
> valores "NA" pero que se hayan leído no como nulos sino como cadenas
> "normales" con valor NA. Deberías echarle un vistazo al argumento
> na.strings de la función de lectura que estés utilizando.
>
> Finalmente, para procesar tablas de 4000 filas no es recomendable
> meterse en el tinglado de data.table. Creo que solo como a partir de
> tablas con un tamaño dos órdenes de magnitud superiores comenzarías a
> detectar diferencias de rendimiento.
>
> Un saludo,
>
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
>
>
> El día 19 de junio de 2015, 17:07, MªLuz Morales <mlzmrls en gmail.com>
> escribió:
> > Este es el summary de mi data.table Datos:
> >
> >> summary(Datos)
> >  In.hospital_death    SAPS.I              SOFA                Age
> > Gender             Height             ICUType
> >  Min.   :0.0000    Length:4000        Length:4000        Min.   :15.00
> > Length:4000        Length:4000        Min.   :1.00
> >  1st Qu.:0.0000    Class :character   Class :character   1st Qu.:52.75
> > Class :character   Class :character   1st Qu.:2.00
> >  Median :0.0000    Mode  :character   Mode  :character   Median :67.00
> > Mode  :character   Mode  :character   Median :3.00
> >  Mean   :0.1385                                          Mean   :64.25
> > Mean   :2.76
> >  3rd Qu.:0.0000                                          3rd Qu.:78.00
> > 3rd Qu.:4.00
> >  Max.   :1.0000                                          Max.   :90.00
> > Max.   :4.00
> >     Weight               HR                Temp               GCS
> > HCT                BUN
> >  Length:4000        Length:4000        Length:4000        Length:4000
> > Length:4000        Length:4000
> >  Class :character   Class :character   Class :character   Class
> :character
> > Class :character   Class :character
> >  Mode  :character   Mode  :character   Mode  :character   Mode
> :character
> > Mode  :character   Mode  :character
> >
> >
> >
> >   Creatinine         Platelets             WBC                 Na
> > HCO3                K
> >  Length:4000        Length:4000        Length:4000        Length:4000
> > Length:4000        Length:4000
> >  Class :character   Class :character   Class :character   Class
> :character
> > Class :character   Class :character
> >  Mode  :character   Mode  :character   Mode  :character   Mode
> :character
> > Mode  :character   Mode  :character
> >
> >
> >
> >       Mg              Glucose             Urine            Urine.Sum
> > NISysABP          NIDiasABP
> >  Length:4000        Length:4000        Length:4000        Length:4000
> > Length:4000        Length:4000
> >  Class :character   Class :character   Class :character   Class
> :character
> > Class :character   Class :character
> >  Mode  :character   Mode  :character   Mode  :character   Mode
> :character
> > Mode  :character   Mode  :character
> >
> >
> >
> >     NIMAP                pH               PaCO2               PaO2
> > DiasABP             SysABP
> >  Length:4000        Length:4000        Length:4000        Length:4000
> > Length:4000        Length:4000
> >  Class :character   Class :character   Class :character   Class
> :character
> > Class :character   Class :character
> >  Mode  :character   Mode  :character   Mode  :character   Mode
> :character
> > Mode  :character   Mode  :character
> >
> >
> >
> >      MAP                FiO2             MechVent           Lactate
> > SaO2               AST
> >  Length:4000        Length:4000        Length:4000        Length:4000
> > Length:4000        Length:4000
> >  Class :character   Class :character   Class :character   Class
> :character
> > Class :character   Class :character
> >  Mode  :character   Mode  :character   Mode  :character   Mode
> :character
> > Mode  :character   Mode  :character
> >
> >
> >
> >      ALT             Bilirubin             ALP              Albumin
> > RespRate          TroponinT
> >  Length:4000        Length:4000        Length:4000        Length:4000
> > Length:4000        Length:4000
> >  Class :character   Class :character   Class :character   Class
> :character
> > Class :character   Class :character
> >  Mode  :character   Mode  :character   Mode  :character   Mode
> :character
> > Mode  :character   Mode  :character
> >
> >
> >
> >  Cholesterol         TroponinI
> >  Length:4000        Length:4000
> >  Class :character   Class :character
> >  Mode  :character   Mode  :character
> >
> >
> >
> > El 19 de junio de 2015, 16:10, Olivier Nuñez <onunez en unex.es> escribió:
> >>
> >> Mª Luz,
> >>
> >> si el comando de Carlos te devuelve 0 es que no hay NA's.
> >> Da igual que tus columnas sean caracteres o número.
> >> Lo que intuyo es que tienes celdas con la frase "NA" que interpretas
> como
> >> NA.
> >> Mandanos el summary de tu data.table y lo vemos...
> >>
> >> ----- Mensaje original -----
> >> De: "MªLuz Morales" <mlzmrls en gmail.com>
> >> Para: "Carlos J. Gil Bellosta" <cgb en datanalytics.com>
> >> CC: "r-help-es" <r-help-es en r-project.org>
> >> Enviados: Viernes, 19 de Junio 2015 16:02:58
> >> Asunto: Re: [R-es] Sobre data.table
> >>
> >> Hola,
> >>
> >> sapply(Datos, function(x) sum(is.na(x)))
> >>
> >> al aplicar esto me devuelve cero para todas las columnas, sin embargo si
> >> que hay elementos NA!!
> >>
> >> Un saludo
> >> MªLuz
> >>
> >> El 19 de junio de 2015, 15:06, Carlos J. Gil Bellosta
> >> <cgb en datanalytics.com>
> >> escribió:
> >>
> >> > Hola, ¿qué tal?
> >> >
> >> > ¿Y por qué no, simplemente, sapply(mi.data.table, function(x) sum(
> is.na
> >> > (x)))?
> >> >
> >> > Un saludo,
> >> >
> >> > Carlos J. Gil Bellosta
> >> > http://www.datanalytics.com
> >> >
> >> >
> >> >
> >> > El día 19 de junio de 2015, 14:44, Olivier Nuñez <onunez en unex.es>
> >> > escribió:
> >> > > Si te devuelve 0 para todas las columnas es que no hay NA's.
> >> > > Tal vez son caracteres igual a "NA".
> >> > > Para asegurarte de ello, prueba
> >> > >
> >> > > DT[,lapply(.SD,function(x) sum(x=="NA",na.rm=TRUE))]
> >> > >
> >> > >
> >> > >
> >> > > ----- Mensaje original -----
> >> > >
> >> > > De: "MªLuz Morales" <mlzmrls en gmail.com>
> >> > > Para: "Olivier Nuñez" <onunez en unex.es>
> >> > > CC: "r-help-es" <r-help-es en r-project.org>
> >> > > Enviados: Viernes, 19 de Junio 2015 14:17:46
> >> > > Asunto: Re: [R-es] Sobre data.table
> >> > >
> >> > > Uy pues con mi data.table no lo hace bien, me devuelve 0 para todas
> >> > > las
> >> > columnas. Podría ser porque algunas columnas son char y otras num??
> >> > >
> >> > > El 19 de junio de 2015, 13:03, Olivier Nuñez < onunez en unex.es >
> >> > escribió:
> >> > >
> >> > >
> >> > >
> >> > > Si quieres mantener el formato data.table en la salida, mejor
> utilizar
> >> > lapply:
> >> > >
> >> > >
> >> > >> DT[,lapply(.SD,function(x) sum( is.na (x)))]
> >> > > X1 X2
> >> > > 1: 2 3
> >> > >
> >> > >
> >> > >
> >> > > De: "MªLuz Morales" < mlzmrls en gmail.com >
> >> > > Para: "Olivier Nuñez" < onunez en unex.es >
> >> > > Enviados: Viernes, 19 de Junio 2015 12:40:09
> >> > > Asunto: Re: [R-es] Sobre data.table
> >> > >
> >> > > Muchas gracias!!
> >> > >
> >> > > El 19 de junio de 2015, 12:29, Olivier Nuñez < onunez en unex.es >
> >> > escribió:
> >> > >
> >> > > <blockquote>
> >> > >> DT=data.table(X1=c(NA,NA,1,1,1),X2=c(1,1,NA,NA,NA))
> >> > >> DT[,apply(.SD,2,function(x) sum( is.na (x)))]
> >> > > X1 X2
> >> > > 2 3
> >> > >
> >> > > Un saludo. Olivier
> >> > >
> >> > > ----- Mensaje original -----
> >> > > De: "MªLuz Morales" < mlzmrls en gmail.com >
> >> > > Para: "r-help-es" < r-help-es en r-project.org >
> >> > > Enviados: Viernes, 19 de Junio 2015 12:08:42
> >> > > Asunto: [R-es] Sobre data.table
> >> > >
> >> > > Hola,
> >> > >
> >> > > quisiera determinar el número de filas distintas del valor NA para
> >> > > cada
> >> > una
> >> > > de las columnas de un data.table. Probablemente se puede hacer de
> una
> >> > forma
> >> > > muy compacta, pero no consigo hacerlo.
> >> > >
> >> > > Gracias
> >> > > Un saludo
> >> > >
> >> > > MªLuz
> >> > >
> >> > > [[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
> >> > >
> >> > >
> >> > >
> >> > >
> >> > >
> >> > >
> >> > > </blockquote>
> >> > >
> >> > >
> >> > >
> >> > >
> >> > >         [[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
> >> >
> >>
> >>         [[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
> >
> >
>

	[[alternative HTML version deleted]]



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