R

Rutas por Zaragoza con R

R

Óscar Perpiñán me puso el otro día al tanto del paquete osmar de R, que

proporciona la infraestructura para acceder a datos de OpenStreetMap a través de diferentes fuentes, trabajar con ellos con R de una manera unificada y aprovechando la infraestructura que proporcionan otros paquetes como, por ejemplo, sp e igraph.

Hoy voy a ilustrar el uso de este paquete adaptando un ejemplo de sus autores para encontrar la ruta óptima entre dos puntos de Zaragoza, la mercería Bell y el colegio La Salle Montemolín, ambos lugares muy vinculados a mi prehistoria. Comenzaré cargando los paquetes necesarios y los datos de OpenStreetMap correspondientes a Zaragoza:

Corrección por exposición del modelo logístico

He tropezado con una extensión curiosa y que no conocía del modelo logístico que lo emparenta un tanto con los modelos de supervivencia. Es un problema que aparece en los modelos de los actuarios, por ejemplo, y en la supervivencia de nidos (sí, nidos de bichos alados), parece.

Es el siguiente: supongamos que unos sujetos están expuestos a un cierto suceso cuya probabilidad, $p_i$, depende del sujeto a través del esquema habitual de la regresión logística (es decir, depende de algunas variables como el sexo, etc., a través de una fórmula lineal cuyos coeficientes interesa estimar).

Un intérprete alternativo de R

R

Java es un lenguaje de programación que puede ejecutarse sobre muchas máquinas virtuales distintas: la de Sun, la de IBM, etc. Algo parecido pasa con SAS, que puede ejecutarse sobre el intérprete de SAS Institute o sobre el de WPS.

El código escrito en R puede ejecutarse, en principio, en dos plataformas distintas:

  • La creada por el R Development Core Team y que todos, más o menos, conocemos.
  • La desarrollada por Tibco (y, previamente, por Insightful) para S-Plus, el dialecto propietario de R (o S).

¿Son esas todas las opciones? Sí, por el momento.

De D'Hondt a Banzhaf

Hablé el otro día con Emilio Torres y comentamos de pasada la situación política en Asturias, donde vive, después de las últimas elecciones. El escaño obtenido por UPyD otorgaba a tal partido un poder en exceso del tamaño de su representación porque era clave para formar el futuro gobierno del principado. Pero, ¿cuánto poder realmente supone ese escaño en esas condiciones? ¿Puede cuantificarse?

Porque se habla mucho en periodo electoral de la ley D’Hondt pero, una vez asignados los escaños, cambia el juego.

Otra de huelgas

Hoy, por motivos evidentes, e igual que en septiembre de 2010, voy a hablar de huelgas. De la misma fuente que entonces he descargado este fichero. Y he ejecutado

library(pxR)
library(reshape)
library(ggplot2)

dat <- read.px("pcaxis-623612450.px")
dat <- as.data.frame(dat)

dat.mes <- cast(dat, Periodo ~ series)
colnames(dat.mes) <- c("mes", "n.huelgas", "n.trabajadores", "n.jornadas")

p <- ggplot(data = dat.mes) + geom_line(aes(x = mes, y = n.huelgas, group = rep(1, nrow(dat))))
p
ggsave("huelgas_por_mes.png")

dat.anno <- dat

tmp <- strsplit(as.character(dat.anno$Periodo), "M")
dat.anno$Periodo <- sapply(tmp, function(x) x[1])

dat.anno <- cast(dat.anno, Periodo ~ series, fun.aggregate = sum)
colnames(dat.anno) <- c("anno", "n.huelgas", "n.trabajadores", "n.jornadas")

p <- ggplot(data = dat.anno, aes(x = anno, y = n.huelgas, group = rep(1, nrow(dat.anno)))) + geom_line()
p <- p + geom_point(aes(size = n.jornadas))
p <- p + scale_x_discrete("año") + scale_y_continuous("número de huelgas")
p
ggsave("huelgas_por_anno.png")

p <- ggplot(data = dat.anno, aes(x = anno, y = n.trabajadores/n.huelgas, group = rep(1, nrow(dat.anno)))) + geom_line()
p <- p + scale_x_discrete("año") + scale_y_continuous("número de trabajadores por huelga")
p
ggsave("trabajadores_huelga_por_anno.png")

p <- ggplot(data = dat.anno, aes(x = anno, y = n.jornadas /n.huelgas, group = rep(1, nrow(dat.anno)))) + geom_line()
p <- p + scale_x_discrete("año") + scale_y_continuous("número de jornadas por huelga")
p
ggsave("jornadas_huelga_anno.png")

para obtener, por un lado, el número de huelgas por mes desde enero de 1995 a noviembre de 2011:

R y la distribución de Rayleigh

En la reunión de usuarios de R de Madrid de ayer, Carlos Ortega estudió la distribución en el tiempo del número de bugs que aparecen en el código de R en cada versión. Indicó que es plausible que sigan una distribución de Rayleigh, relativamente frecuente en ese tipo de contextos. E indicó que esta distribución, no tan conocida, tiene que ver (he olvidado lo que dijo exactamente) con dos normales independientes.

Efectivamente, según la Wikipedia, la distribución de Rayleigh (de parámetro $\sigma$)admite la caracterización

Noticia de la primera reunión del grupo de usuarios de R de Madrid

R

Acaba de terminar la primera reunión del grupo de usuarios de R de Madrid. No hemos disfrutado de la más primaveral de las tardes. Y la ubicación era un tanto excéntrica. Pero hemos tenido tres charlas muy interesantes (y luego, la mía, claro), nueve asistentes (¡espero haber contado bien!) y, sobre todo, unos intercambio de ideas sumamente provechosos.

Los enlaces a las presentaciones estarán pronto disponibles en la página del grupo. Pero como adelanto:

Un articulillo de Tukey

Hoy ando demasiado ocupado para escribir. Y como es posible que alguno de mis lectores no lo esté tanto como para no leer, le dejo un artículo de Tukey (abajo del todo en el enlace anterior) para que conozca al personaje, si no ha tenido el gusto previo, disfrute en cualquier caso y, en todos, sepa de dónde vienen los rootograms que implementa el paquete latticeExtra de R.

Primera reunión del grupo de usuarios de R de Madrid

R

El miércoles 21 de marzo de 2012, en el aula N-130 del edificio de primer curso (también conocido como Prefabricado) de la facultad de CC. Económicas de la UCM (Somosaguas) tendrá lugar la primera reunión del grupo de usuarios de R de Madrid.

Contamos con tres charlas muy interesantes y una mía. Esta última trata de una función que aún no existe sino en forma de bosquejo en mi cabeza. Espero que esté presentable el miércoles.

¡Maño qué mapa!

R

Esta mañana casi me da esa tontería de sentirme orgulloso de ser de donde soy, Zaragoza. Al fin y al cabo, podría haber sido de cualquier otro lugar. Pero es que Zaragoza tiene uno de los portales de datos públicos municipales más avanzados. En eso es una ciudad pionera.

(Se lo hemos de agradecer a nuestro alcalde, Belloch, que, dicen las malas lenguas, además de socialista y barbudo, es linuxero).

Entre los datos disponibles, los hay de tráfico en tiempo real. En particular, existe una serie de tramos de calle y un fichero que se actualiza cada pocos segundos que indica el estado del tráfico en ellos.