Víctor Nalda Castellet
2014-Mar-19 16:28 UTC
[R-es] Posible error en la documentación de "aggregate"
Hola compañeros, estaba utilizando la función "aggregate" y quería que tuviese en cuenta los NAs. He leido la documentación de dicha función y aparece esto: # and if you want to treat NAs as a group fby1 <- factor(by1, exclude = "") fby2 <- factor(by2, exclude = "") aggregate(x = testDF, by = list(fby1, fby2), FUN = "mean") (http://stat.ethz.ch/R-manual/R-patched/library/stats/html/aggregate.html) Pero el argumento exclude de la función factor, para que tenga en cuenta NAs (según la documentación de factor, https://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html) se debe poner exclude=NULL. ## suppose you want "NA" as a level, and to allow missing values. (x <- factor(c(1, 2, NA), exclude = NULL))is.na(x)[2] <- TRUE x # [1] 1 <NA> <NA>is.na(x) # [1] FALSE TRUE FALSE ¿Qué pensais sobre ello? ¿Es un error de la documentación o estoy equivocado? Un saludo, y gracias. -- Víctor Nalda Castellet [[alternative HTML version deleted]]
Hola, creo que mirando el código de la función (factor) se entiende un poco, pases lo que le pases a exclude entre comillas, haces el mismo efecto, como si le pasas "hola", si no le pasaras ningún argumento si que sería distinto, pues se aplica el valor por defecto a ese parámetro, fíjate en los condicionales, y la comprobación de !is.null, creo que por ahí está la clave, aunque podría equivocarme. El Wed, 19 Mar 2014 17:28:56 +0100 Víctor Nalda Castellet <victor.nalda.castellet en gmail.com> escribió:> Hola compañeros, estaba utilizando la función "aggregate" y quería que > tuviese en cuenta los NAs. He leido la documentación de dicha función > y aparece esto: > > # and if you want to treat NAs as a group > fby1 <- factor(by1, exclude = "") > fby2 <- factor(by2, exclude = "") > aggregate(x = testDF, by = list(fby1, fby2), FUN = "mean") > > (http://stat.ethz.ch/R-manual/R-patched/library/stats/html/aggregate.html) > > Pero el argumento exclude de la función factor, para que tenga en > cuenta NAs (según la documentación de factor, > https://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html) > se debe poner exclude=NULL. > > ## suppose you want "NA" as a level, and to allow missing values. > (x <- factor(c(1, 2, NA), exclude = NULL))is.na(x)[2] <- TRUE > x # [1] 1 <NA> <NA>is.na(x) > # [1] FALSE TRUE FALSE > > ¿Qué pensais sobre ello? ¿Es un error de la documentación o estoy > equivocado? > > > Un saludo, y gracias. >
Víctor Nalda Castellet
2014-Mar-19 17:04 UTC
[R-es] Posible error en la documentación de "aggregate"
La cuestión es que yo he invocado a factor con exclude="" y no me funcionaba. Por eso estaba preguntando a la comunidad. El 19 de marzo de 2014, 17:57, Olmo <ulmusnigra@yahoo.es> escribió:> Hola, creo que mirando el código de la función (factor) se entiende un > poco, pases lo que le pases a exclude entre comillas, haces el mismo > efecto, como si le pasas "hola", si no le pasaras ningún argumento si > que sería distinto, pues se aplica el valor por defecto a ese > parámetro, fíjate en los condicionales, y la comprobación > de !is.null, creo que por ahí está la clave, aunque podría equivocarme. > > El Wed, 19 Mar 2014 17:28:56 +0100 > Víctor Nalda Castellet <victor.nalda.castellet@gmail.com> escribió: > > Hola compañeros, estaba utilizando la función "aggregate" y quería que > > tuviese en cuenta los NAs. He leido la documentación de dicha función > > y aparece esto: > > > > # and if you want to treat NAs as a group > > fby1 <- factor(by1, exclude = "") > > fby2 <- factor(by2, exclude = "") > > aggregate(x = testDF, by = list(fby1, fby2), FUN = "mean") > > > > ( > http://stat.ethz.ch/R-manual/R-patched/library/stats/html/aggregate.html) > > > > Pero el argumento exclude de la función factor, para que tenga en > > cuenta NAs (según la documentación de factor, > > https://stat.ethz.ch/R-manual/R-devel/library/base/html/factor.html) > > se debe poner exclude=NULL. > > > > ## suppose you want "NA" as a level, and to allow missing values. > > (x <- factor(c(1, 2, NA), exclude = NULL))is.na(x)[2] <- TRUE > > x # [1] 1 <NA> <NA>is.na(x) > > # [1] FALSE TRUE FALSE > > > > ¿Qué pensais sobre ello? ¿Es un error de la documentación o estoy > > equivocado? > > > > > > Un saludo, y gracias. > > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- Víctor Nalda Castellet [[alternative HTML version deleted]]