Gráficos de mosaico: ¿sí o no?

Los gráficos de mosaico son cosas parecidas a que sirven para representar tablas bidimensionales (como en el ejemplo anterior) o multidimensionales, como en Hay más al respecto sobre este tipo de gráficos aquí. Personalmente, los utilizo bastante como herramienta exploratoria. En particular, usando Mondrian. Mondrian permite crear estos y otros tipos de gráficos similares (p.e., estos) de manera, además, interactiva. Me gustan porque permiten representar simultáneamente muchas variables. Pero tengo mis reservas: casi siempre me resultan difíciles de interpretar y también, mucho más, de explicar. ...

7 de mayo de 2014 · Carlos J. Gil Bellosta

"Accurate", acurado, preciso y todas esas cosas

Tenía un profesor de estadística que traducía accurate por acurado. Aún recuerdo esas sesiones insoportables con aquel señor que era lo contrario que Hans Rosling. No hace mucho vine a descubrir que acurado existe en español. No obstante, significa otra cosa: cuidadoso y esmerado. Algunos amigos me recomendaban preciso. La verdad, me gusta esta traducción. Pero bien podría ser un falso amigo. En inglés, precision tiene que ver con la varianza y accurate con el sesgo. ...

5 de mayo de 2014 · Carlos J. Gil Bellosta

El primer DataBeers de Madrid, el martes en MartinaCocina

Este martes 6 de mayo tendrá lugar el primer encuentro de DataBeers de Madrid. A las 19:30 de la tarde, en MartinaCocina (plaza de Cascorro, 11), habrá minicharlas relacionadas con el mundo de los datos y cervezas. El programa, que incluye a algunos viejos conocidos, es el siguiente: Dani Villatoro: Cicerone: Your venue recommendations through Twitter Boris Villazón: Data Integration - A Linked Data approach Javier de la Torre: Everything happens somewhere Mari Luz Congosto: Datrinos: extrayendo datos de los trinos de Twitter

5 de mayo de 2014 · Carlos J. Gil Bellosta

Las VI Jornadas de Usuarios de R, en Santiago

Escribo para anunciar públicamente que están en marcha las VI Jornadas de Usuarios de R. Se celebrarán este año en Santiago, los días 23 y 24 de octubre de 2014. Esta nueva edición debe mucho a la colaboración de Miguel Ángel Rodríguez Muiños, al Centro de Novas Texnologías de Galicia y otras asociaciones gallegas vinculadas al software libre. Todavía no está disponible el programa (que, en cierto modo, es responsabilidad de vosotros: estáis invitados a enviar propuestas de ponencias y talleres). ...

5 de mayo de 2014 · Carlos J. Gil Bellosta

Embalses en España: otro ejercicio inconcluso de "web scraping"

Vi el otro día que alguien había conseguido datos de la entrada en funcionamiento de las presas de EE.UU. y me picó la curiosidad: ¿se podrán conseguir también para España? La respuesta es afirmativa. El código para bajarse (y adecentar un poco) la base de datos es: library(XML) ## bajada de datos tmp <- lapply(1:47, function(x) readLines(paste("http://www.seprem.es/presases.php?p=", x, sep = ""))) tmp2 <- lapply(tmp, readHTMLTable) ## limpieza de datos res <- lapply(tmp2, function(x) x[[1]]) res <- do.call(rbind, res) res <- res[,-c(1,7)] res <- res[!is.na(res$V2),] res <- res[-(1:5),] res <- data.frame(lapply(res, as.character), stringsAsFactors=F) names(res) <- make.names(as.character(res[1,])) ## filtros de filas res <- res[res$Nombre != "Nombre",] res <- res[res$Nombre != "",] res <- res[!grepl("Presas", res$Nombre), ] res <- res[!grepl("DIQUE DEL", res$Nombre), ] colnames(res) <- c("nombre", "vertiente", "altura", "hm3", "finalizada") res <- res[!is.na(res$vertiente),] ## texto a numérico res$altura <- as.numeric(gsub(",", ".", res$altura)) res$hm3 <- as.numeric(gsub(",", ".", res$hm3)) res$finalizada <- as.numeric(res$finalizada) ## más filtros (se aplican a obras que no son embalses) res <- res[!is.na(res$hm3), ] ## los embalses en construcción no tienen fecha de ## finalización res$finalizada[is.na(res$finalizada)] <- 2015 En cuanto a qué hacer con ellos, me limitaré a mostrar la salida de ...

30 de abril de 2014 · Carlos J. Gil Bellosta

Todo el mundo habla de cadenas de Markov

Todo el mundo habla últimamente de cadenas de Markov. ¿No os habéis dado cuenta? ¿O seré yo el que saca a relucir el asunto venga o no al caso? Sea que se haya puesto de moda o que esté mi misma obsesión por el asunto sesgando mi impresión sobre sobre (me encanta escribir dos preposiciones seguidas) lo que la gente habla, es el caso que el otro día me comprometí a escribir sobre ...

29 de abril de 2014 · Carlos J. Gil Bellosta

¿Cinco años y salen sin programar?

Sí, hay gente que pasa cinco años en una de esas instituciones encopetadas que son las universidades y sale de ellas sin saber programar. Aquí va un ejemplo. Es un fragmento de un currículo que me ha llegado recientemente. El tipo es economista, graduado en uno de los departamentos de la materia más reconocidos de Madrid. Dice así: Eso es todo lo que el tipo reconoce saber sobre algo parecido a la programación. ...

28 de abril de 2014 · Carlos J. Gil Bellosta

Una de gráficos casi artísticos con R

Hoy traigo una selección a cuatro páginas en que podréis encontrar gráficos casi artísticos creados con R. En la primera de ellas se construye el fractal de Collatz. En las dos siguientes, los autores construyen animaciones. Una de ellas para ilustrar el mecanismo de la regresión local y el segundo para crear figuras en 3D. Y el último, trata de mapas. En particular, de cómo sobreimponer sobre ellos datos de rutas.

25 de abril de 2014 · Carlos J. Gil Bellosta

Aventuras de "web scraping": cómo bajarse todo el BOE

Rescato aquí para futura o ajena referencia un pedazo de código que utilicé un día para un proyecto que se abortó y que tenía que ver con el análisis del texto del BOE. Reza así: setwd("~/boe/boes") library(RCurl) h = getCurlHandle() for( i in 1:3231){ mi.url <- paste("http://www.boe.es/diario_boe/xml.php?id=BOE-A-2013-", i, sep = "") nom.fich <- paste("2013-A-", formatC(i, width = 6, format = "d", flag = "0"), ".xml", sep = "") res <- getURI(mi.url, curl = h) cat(res, file = nom.fich) } for( i in 1:3212){ mi.url <- paste("http://www.boe.es/diario_boe/xml.php?id=BOE-B-2013-", i, sep = "") nom.fich <- paste("2013-B-", formatC(i, width = 6, format = "d", flag = "0"), ".xml", sep = "") res <- getURI(mi.url, curl = h) cat(res, file = nom.fich) } No me preguntéis por qué el contador solo llega hasta tres mil doscientos y pico. O por qué no itero hasta que getURI devuelva un error.

24 de abril de 2014 · Carlos J. Gil Bellosta

Demasiado simple

La realidad es compleja y los más de los fenómenos son multivariados. Frente a casi cualquier afirmación del tipo A causa B, el detector de pendejadas debería hacer saltar la alarma y hacernos pensar que tal vez sea demasiado simple. Mi detector de pendejadas tuvo más trabajo del habitual mientras leía Equidad y élite. El artículo, tengo la impresión, elabora sobre los datos recogidos en este informe del Ministerio de Educación sobre los resultados de PISA para España en 2012. En realidad, no son los resultados de PISA sino de un estudio piloto paralelo sobre una submuestra de la muestra de estudiantes a los que se ha examinado por ordenador y no con el tradicional cuestionario de papel. Insisto: tengo la sensación de que son esos los datos porque el autor del artículo no cita sus fuentes sino vagamente. ...

23 de abril de 2014 · Carlos J. Gil Bellosta