Sevilla: otro grupo local de usuarios de R

Me acabo de enterar que nuestros colegas de Sevilla están organizando la primera reunión de su grupo local de usuarios de R. Además, el tema es muy, muy relevante y de interés general: R Markdown. Los detalles, aquí. Sevillanos que seguís esta bitácora: ¡que no me entere yo que faltáis!

18 de noviembre de 2014 · Carlos J. Gil Bellosta

Descargar ficheros .gz detrás de HTTPS con R

El problema consiste en leer, por ejemplo, [https://stat.ethz.ch/pipermail/r-help-es/2012-August.txt.gz](https://stat.ethz.ch/pipermail/r-help-es/2012-August.txt.gz). Desde Windows, por algún motivo, es sencillo: se puede usar download.file y luego, readLines directamente (porque no sé si sabéis que esta y otras funciones similares saben leer directamente ficheros comprimidos con gzip). En Linux parece algo más complicado: download.file se niega a bajar ficheros usando el protocolo [https](http://en.wikipedia.org/wiki/HTTP_Secure). Lo mejor que he sabido hacer es library(httr) x <- GET("https://stat.ethz.ch/pipermail/r-help-es/2012-August.txt.gz") tmp <- tempfile() writeBin(content(x, "raw"), tmp) res <- readLines(tmp) unlink(tmp) que es feo, feo, feo.

12 de noviembre de 2014 · Carlos J. Gil Bellosta

Remuestreos y tests de hipótesis

No sé si visteis el vídeo que colgué el otro día. Trataba el problema de determinar si dos poblaciones beer <- c(27, 20, 21, 26, 27, 31, 24, 21, 20, 19, 23, 24, 18, 19, 24, 29, 18, 20, 17, 31, 20, 25, 28, 21, 27) water <- c(21, 22, 15, 12, 21, 16, 19, 15, 22, 24, 19, 23, 13, 22, 20, 24, 18, 20) tienen o no la misma media. Más concretamente, si la población beer tiene una media superior a la de water como en efecto sucede: mean(beer) #[1] 23.2 mean(water) #[1] 19.22222 ¿Pero es esta diferencia significativa? Muchos plantearían un t-test: t.test(beer, water, alternative = "greater") # Welch Two Sample t-test # # data: beer and water # t = 3.3086, df = 39.271, p-value = 0.001007 # alternative hypothesis: true difference in means is greater than 0 # 95 percent confidence interval: # 1.952483 Inf # sample estimates: # mean of x mean of y # 23.20000 19.22222 Pero en el vídeo se propone una alternativa basada en remuestreos: ...

10 de noviembre de 2014 · Carlos J. Gil Bellosta

Disponibles los vídeos y presentaciones de las VI Jornadas de Usuarios de R

Ya están disponibles las diapositivas y vídeos de las charlas de las VI Jornadas de Usuarios de R. Entre ellos, las diapositivas y el de la charla de quien suscribe. (Y gracias, de nuevo, al equipo local (en Santiago) del Comité Organizador de las Jornadas por su estupendo trabajo).

5 de noviembre de 2014 · Carlos J. Gil Bellosta

Noticia de las VI Jornadas de Usuarios de R

Regreso de las VI Jornadas de Usuarios de R y, como otros años he hecho (véase esto, esto y esto), al volver a casa, quiero escribir sobre este par de días estupendos que he pasado en Santiago. Antes de ello quiero agradecer a los miembros de los comités científico y organizador su esfuerzo. Muy especialmente a los miembros locales de este último que —quien lo probó bien lo sabe— hicieron un gran e impagable trabajo. (Aquí me es obligado indicar que mis agradecimientos al comité organizador no se extienden a uno de ellos, el que suscribe, que este año, prácticamente, solo fue miembro de manera nominal). ...

27 de octubre de 2014 · Carlos J. Gil Bellosta

Parto para las VI Jornadas de Usuarios de R

Esta noche, mochila al hombro, parto para Santiago. Me esperan allá las VI Jornadas de Usuarios de R. Algo contaré este año. Es lo de menos. Lo de más, que volveré a ver a viejos amigos. ¿Nos vemos en Santiago?

22 de octubre de 2014 · Carlos J. Gil Bellosta

Aprende R con swirl

Me pasó el otro día Federico Castanedo un enlace a swirl que quiero compartir con mis lectores y, en particular, aquellos que quieren aprender (¡o enseñar!) R. ¿Cómo funciona? Sencillo: install.packages("swirl") library("swirl") swirl() (idealmente en RStudio) y luego, click, click, click hasta saber todo lo que merece ser sabido en R.

16 de octubre de 2014 · Carlos J. Gil Bellosta

Amanece, me cuentan, que no es poco

El amanecer es una cosa que ocurre a diario, me cuentan, pero que yo apenas he visto. Casi hablo de lo que no sé. Por otra parte, la discusión de los horarios, de si deberíamos tener la hora de Londres y no la de Berlín, me parece puro nominalismo. Unos llaman a la hora a la que se levantan sechs, otros seven, otros huit y yo diez y veinte. Y no pasa nada. ...

14 de octubre de 2014 · Carlos J. Gil Bellosta

Bootstrap bayesiano

Hoy voy a hablar de esa especie de oxímoron que es el bootstrap bayesiano. Comenzaré planteando un pequeño problema bien conocido: tenemos números $x_1, \dots, x_n$ y hemos calculado su media. Pero nos preguntamos cómo podría variar dicha media (de realizarse otras muestras). La respuesta de Efron (1979) es esta: replicate(n, mean(sample(x, length(x), replace = TRUE))) Es decir, crear muestras de $x_i$ con reemplazamiento y hacer la media de cada una de ellas para obtener su presunta distribución (o una muestra de la presunta distribución de esa media). ...

10 de octubre de 2014 · Carlos J. Gil Bellosta

Experto en Data Science en la U-tad

Se me ha ido pasando y nunca he llegado a escribir aquí que seré uno de los profesores del Experto en Data Science de la U-tad que comienza… de hecho este viernes. El escribir tan tarde me permite, al menos, presumir de que todo lo bueno que tengo que decir sobre el programa y el claustro no tiene finalidad comercial/propagandística. Y sí, lo habéis adivinado: la parte del programa que me corresponde tiene que ver con R y algunos de los paquetes que me sacan de apuros a diario (p.e., data.table). Y la otra sobre motores de recomendación. Tema en el que hasta no hace mucho no creía (y tampoco me atraía) pero en el que estoy descubriendo extensiones muy interesantes. Como por ejemplo, esta.

9 de octubre de 2014 · Carlos J. Gil Bellosta