rOpenSpain: ahí tiro el guante

La gente de rOpenSci hace cosas a las que merece la pena pretar atención. Tanto por los objetivos como por medios y las formas. Recomiendo seguir sus últimas publicaciones acerca de la profesionalización del proceso de desarrollo de código. Llevo unos meses jugando con una idea inspirada por rOpenSci: crear un repositorio y un consorcio más o menos formal que desarrolle, mantenga y mejore herramientas (en R) de interés para el procesamiento y análisis de datos ya no científicos sino españoles. Hablo, obviamente, de INE (EPA, EPF, censo, padrón,…), CIS (barómetros, etc.), IGN (Siane,…), encuestas electorales, etc. ...

11 de octubre de 2017 · Carlos J. Gil Bellosta

Efectos secundarios (nota: que existan no significa que debas usarlos)

Una función no debería cambiar nada de cuanto la rodea. Debería devolver algo y ya. Se acepta barco como animal acuático cuando hay funciones que escriben en logs, guardan datos en disco o crean gráficos. R deja que los usuarios se disparen en el pie permitiendo hacer cosas tan peligrosas como: a <- new.env() a$1 # error foo <- function(){ a$a <- 1 } foo() a$a # [1] 1 De la misma manera, si le enseñas un cuchillo a una vieja, es posible que te dé su bolso con todo lo que contiene. Pero eso no significa que debas usar los cuchillos para tales fines.

10 de octubre de 2017 · Carlos J. Gil Bellosta

Una comparación de lenguajes de programación en una esquinita pequeña de la economía

El título, no el de esta entrada sino el de A Comparison of Programming Languages in Economics, es una sinécdoque confusa. Que nadie busque en él consejo sobre qué lenguaje estudiar si le interesa el mundo de la economía (en general). O fuera de ella (también en general). Encontrará más bien la implementación de la solución a un único problema dentro de los muchos que supongo comprende esa disciplina. Uno, además, con el que no he visto (en persona) a economista alguno ganarse el pan ni en la academia ni fuera de ella. ...

6 de octubre de 2017 · Carlos J. Gil Bellosta

CatastRo, un paquete de R para consultar la API del Catastro

Informo de que está disponible en GitHub el paquete CatastRo para consultar la API pública del Catastro. No es una API particularmente extensa, pero es de esperar que se amplíe el catálogo de servicios disponible cuando comencemos a machacarla (o no: a saber qué hay en la mente de esa gente). El paquete es el trabajo de fin de máster de mi alumno Ángel Delgado Panadero en el máster de ciencia de datos de la UTAD.

2 de octubre de 2017 · Carlos J. Gil Bellosta

Geofacetas

Con geofacet se puede hacer

28 de septiembre de 2017 · Carlos J. Gil Bellosta

Python y R: una perspectiva markoviana

Hoy he visto aquí y he escrito m <- matrix(c(74, 15, 10, 1, 11, 50, 38, 1, 5, 4, 90, 1, 17, 4, 19, 60), 4, 4, byrow = TRUE) m <- m / 100 luego m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m%*% m%*% m%*% m%*% m%*% m%*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m %*% m%*% m%*% m%*% m%*% m%*% m%*% m # [,1] [,2] [,3] [,4] #[1,] 0.1926676 0.1133218 0.6696203 0.02439024 #[2,] 0.1926647 0.1133206 0.6696245 0.02439024 #[3,] 0.1926638 0.1133202 0.6696258 0.02439024 #[4,] 0.1926675 0.1133218 0.6696205 0.02439025 y finalmente res <- eigen(t(m)) res$vectors[,1] / sum(res$vectors[,1]) #[1] 0.19266473 0.11332059 0.66962444 0.02439024 Aquí dice por qué.

6 de septiembre de 2017 · Carlos J. Gil Bellosta

Gelmaneando

Hoy, gelmaneo así: bar <- function(n, reps = 1e4){ foo <- function(n){ x <- rnorm(n) tmp <- t.test(x) c(tmp$p.value, abs(mean(x))) } res <- replicate(reps, foo(n)) tmp <- t(res) tmp <- tmp[tmp[,1] < 0.05,] tmp[,2] } res <- lapply(c(3, 10, 20, 50, 100), bar) sapply(res, mean) #[1] 0.8662636 0.6583157 0.4934551 0.3240322 0.2337086 Resumo: Fabrico un montón de errores de tipo I. Recuérdese: error de tipo I implica artículo publicado. Hago variar el número de sujetos (3, 10, etc.), n. Mido el tamaño (promedio) del efecto, E; el estudio de su distribución, ejercicio para el lector. Y efectivamente, E es función decreciente de n. ...

13 de julio de 2017 · Carlos J. Gil Bellosta

Micromapas

Vienen a ser la versión geo de las sparklines. Por ejemplo, Notas: El gráfico anterior no es mío. El código (y datos) con el que se generó tampoco. Son de Susana Huedo, exalumna. Está basado (todo hay que decirlo) en código de terceros y debería acordarme de cuál de ellos. Pero no es el caso.

7 de julio de 2017 · Carlos J. Gil Bellosta

Creo que darán que hablar (los GRF)

El artículo, el código y el paquete.

6 de julio de 2017 · Carlos J. Gil Bellosta

Syberia tiene muy buena pinta [pero...]

Echadle un vistazo a Syberia (y me contáis qué tal os va). Tiene muy buena pinta y puede ser útil para produccionalizar código. [Esto es casi todo; lo que sigue es omitible.] Sin embargo y sin que necesariamente haga desmerecer a Syberia como tal, en la página arriba enlazada se lee: In the viewpoint of the author, R is syntactic sugar around LISP, which enables arbitrary computation; Syberia is an attempt to support this conjecture by allowing the construction of arbitrary software projects within the R programming language, thereby finally outgrowing its long-overdue misconception as a statistical tool. ...

5 de julio de 2017 · Carlos J. Gil Bellosta