domingo, 8 de julio de 2012

Librerías en R


Instalar librerías (paquetes) en R es muy fácil, una vez sabemos su nombre, basta con introducir la siguiente orden en R:

install.packages("SixSigma")

Y para poder utilizar las funciones y datos de la librería, la cargamos en el espacio de trabajo de R:

library("SixSigma")

Pero una cosa que me ha traído un poco de cabeza es dónde se instalan, cómo gestionarlas y, sobre todo, cómo mantenerlas cuando se actualiza a una nueva version de R. Pues bien, para ver dónde están las librerías instaladas en el equipo podemos hacer lo siguiente:

.libPaths()
## [1] "C:/R/library"          "C:/R/R-2.15.1/library"

Podemos añadir nuevas librerías. Por ejemplo en Windows, añadiendo una variable de entorno en las propiedades avanzadas del sistema, como se ve en la imagen:


Una vez tenemos esta variable R_LIBS, los nuevos paquetes que instalemos lo harán en esta librería. Podemos especificar en qué librería queremos que se instale mediante el argumento lib en la función install.packages. En realidad, el valor por defecto es el primer elmento del vector que obtenemos con .libPaths(). Para cada paquete, podemos decidir en cuál de nuestras librerías lo instalamos.

Cuando actualicemos a una nueva versión de R, si tenemos configurada la librería correctamente, los paquetes están disponibles para la nueva versión. No obstante, tendremos que actualizar también los paquetes a la última versión, ya que suele haber cambios en los paquetes con actualización de R, al menos en los que son mantenidos regularmente:

update.packages(checkBuilt = TRUE, ask = FALSE)

Por último, una cosa a tener en cuenta es qué versión de cada paquete tener en cada versión de R. Por ejemplo, la versión 0.6.1 del paquete SixSigma incluye una función nueva que el R-core team ha incluido para evitar mensajes al comprobar los nuevos o actualizados paquetes (globalVariables). Esto significa que en las versiones anteriores a la 2.15.1, el paquete SixSigma 0.6.1 no funcionará, por lo que tendremos que manejar esta situación de algún modo. Igualmente, se puede dar que un paquete que usamos, no funcione correctamente con la última versión de R, y tengamos que utilizar una anterior. Todo esto es un poco más enrevesado y hay varias opciones, por lo que lo dejo para otra ocasión. En la ayuda de ?.libPaths hay información sobre este tema.

Por cierto, yo utilizo Eclipse con el plugin statET, y lógicamente aquí hay que tener bien configuradas las librerías:


Para esta entrada por primera vez he utilizado el paquete knitr:

citation("knitr")
## 
## To cite package 'knitr' in publications use:
## 
##   Yihui Xie (2012). knitr: A general-purpose package for dynamic
##   report generation in R. R package version 0.6.3.
##   http://CRAN.R-project.org/package=knitr
## 
## A BibTeX entry for LaTeX users is
## 
##   @Manual{,
##     title = {knitr: A general-purpose package for dynamic report generation in R},
##     author = {Yihui Xie},
##     year = {2012},
##     note = {R package version 0.6.3},
##     url = {http://CRAN.R-project.org/package=knitr},
##   }
## 

martes, 3 de julio de 2012

Año Internacional de la Estadística (Statistics2013)

The International Year of Statistics (Statistics2013)
El próximo año estamos de celebración. En todo el mundo se celebrará y reconocerá las contribuciones de la Estadística. Se promocionará la importancia de la Estadística  a una amplia gama de destinatarios: comunidad científica, usarios de datos del sector público y privado, medios de comunicación, legisladores, trabajadores, estudiantes y público en general (vamos, a todo el mundo). Toda la información está disponible en la web http://www.statistics2013.org.

Hay una lista de actividades alrededor del mundo relacionadas con la estadística, que imagino irá creciendo en los próximos meses. Se pueden añadir actividades sin que ello comporte compromiso alguno. Es una forma de indicar que se apoyan los objetivos del Año Internacional de la Estadística. Pronto aparecerá el próximo Congreso Internacional de Usuarios de R (useR! 2013) que se celebrará en España en este año tan especial.

Ojalá esta celebración sirva para que se conozca mejor la labor de los estadísticos, y  las contribuciones tanto a la vida cotidiana como a la investigación científica.