R

Leaflet con capas WMS de Correos, Catastro, etc.

R

Esta entrada es un subproducto del trabajo que pocería que he realizado estos días en caRtociudad.

caRtociudad permite generar mapas estáticos al estilo de ggmap. Iba a poner algún ejemplo, pero los dejo para otro día.

La cosa es que mejorando caRtociudad::get_cartociudad_map, se me ha pasado por la cabeza la posibilidad de realizar la integración no ya con ggmap sino con leaflet. Y así (¡probadlos!), para los códigos postales,

library(leaflet)

leaflet() %>% addTiles() %>%
  setView(-3.703399, 40.41688, zoom = 14) %>%
  addWMSTiles(
  "http://www.ign.es/wms-inspire/ign-base",
  layers = "codigo-postal",
  options = WMSTileOptions(format = "image/png",
    transparent = TRUE),
  tileOptions(tms = TRUE),
  attribution = "")

Para las secciones censales,

t y as.raster no conmutan; ¿por qué no conmutarán?

R

Creo una minimatriz, la convierto en un raster y la represento:

m <- matrix(c(0, 0, 0.33, 0.66, .9, .9), 2, 3)
m
#      [,1] [,2] [,3]
# [1,]    0 0.33   .9
# [2,]    0 0.66   .9

r <- as.raster(m)
r
#           [,1]      [,2]      [,3]
# [1,] "#000000" "#545454" "#FFFFFF"
# [2,] "#000000" "#A8A8A8" "#FFFFFF"

plot(r, interpolate = FALSE)

Ahora, con la matriz traspuesta,

r_t_1 <- as.raster(t(m))
r_t_1
#           [,1]      [,2]
# [1,] "#000000" "#000000"
# [2,] "#545454" "#A8A8A8"
# [3,] "#E6E6E6" "#E6E6E6"

obtengo

El malabarista de Amiga, con R (y rgl)

R

Un exalumno mío de unos cursos de R, Guillermo Luijk, ha creado

usando R (y el paquete rgl).

Toda la información relevante, (incluyendo la historia, el código, las ecuaciones, etc.) aquí. Infinitamente recomendable.

(La recomendación se extiende encarecidamente al resto de las entradas de su blog).

La intrahistoria de mi libro de R

Una de las preguntas más fértiles que pueden formularse frente a algo es la del motivo de su existencia: ¿por qué existe en lugar de, simplemente, no existir?

El otro día anuncié públicamente la existencia de mi libro de R. No es el mejor ni el peor. Es hijo de las circunstancias que lo hicieron nacer. Que describo a continuación.

I

Corría el 2014. Yo tecleaba entonces en las oficinas de eBay en Zúrich. La oficina estaba escindida en dos: SAS y Python. No había apenas R por minúsculo problema técnico: no había (aparentemente) drivers para Teradata. La conexión entre R y Teradata estaba rota. Pero en una tarde y con unas cuantas líneas de Java, fabriqué un paquete de R que daba conexión ODBC con Teradata y más (lo típico: queries parametrizadas, etc.). Fue para mi uso personal, luego se popularizó (sí, me llegó una oferta para trabajar en Accenture de EE.UU. por parte de un grupo de usuarios agradecidos que no conocía); ahora no sé qué será de él.

Un libro de R: mi libro de R

No quería hacerlo público aún pero alguien se ve que lo estaba leyendo por ahí. No sé si Google habrá levantado ya la pájara. Tampoco es que fuese un secreto: lo he usado para varios cursos y me consta que ha sido usado por terceros para tal fin.

Pero ya está, es oficial: mi libro de introducción a R (inacabado) está colgado (aquí).

Y no voy a añadir nada más al respecto porque está todo en la introducción.

¿Un voluntario para aggiornar MicroDatosEs?

R

Mi paquete MicroDatosEs ya forma parte de rOpenSpain. Sin embargo, está falto de ciertas mejoras a las que aspiran los paquetes que forman parte de dicho repositorio.

Una de ellas es la de migrar la documentación del paquete a roxigen2. Lo podría hacer yo, pero es muy aburrido. Sin embargo, entiendo que puede ser entretenido (además de sencillo) para alguien que:

  • No sepa de qué va eso de roxigen2 pero me tome la palabra en eso de que es importante.
  • No sepa mucho de cómo va git, GitHub, etc. pero me tome la palabra en eso de que es importante.
  • Quiera disfrutar de una oportunidad real y significativa de aprender practicando.
  • Quiera aparecer en la lista de contribuyentes a dicho paquete.

Así que si alguien está dispuesto a pasar unas cuantas horas aprendiendo, que avise y le cuento cómo proceder. Eso sí, por simplificar, va a ser uno y no más.

¿Podría ser la solución que almas caritativas creasen viñetas espontáneamente?

R

Uno de los modelos más útiles potencialmente y que menos atención recibe es el de los modelos de conteos autoexcitados. Es decir, aquellos en los que un evento incrementa durante cierto tiempo la probabilidad de que ocurra otro. Creedme, ocurre así muy a menudo en muchas aplicaciones.

Por eso se pone uno muy contento cuando descubre paquetes de R como este.

Pero el hecho de que unos académicos lo hayan creado y puesto ahí por mor de las neonormas (administrativas, morales o de señalamiento) de reproducibilidad, no significa que lo hayan desarrollado para los usuarios finales. O pensando en ellos.

Documentar como el culo, no pensar en el usuario final, ser incapaz de ponerte en su situación, etc.

R

De vez en cuando pruebo paquetes promisorios. No es infrecuente que cosas que he intentado hace años, algún ejemplo más o menos sencillo que he publicado aquí, acabe convirtiéndose en la piedra angular de algo facturable. Incluso de algo facturable por mí.

geozoning podía haber sido uno de esos. La promesa del paquete es que puede ayudarte a segmentar regiones del espacio de acuerdo con alguna variable, una especie de clústering para información de tipo espacial.

mgm (no la de las pelis sino la de los modelos gráficos)

Cayeron en mis manos unos datos que no puedo publicar, pero me atreveré a presentar algunos resultados anonimizados. Se trata de una tabla de puntuaciones numéricas (18 en total, cada una en su columna) proporcionadas por unos cuantos centenares de sujetos (filas). Era de interés un estudio cualitativo de las posibles relaciones de dependencia entre las variables.

La manera más rápida de comenzar, un heatmap(cor(dat)), para obtener

Y luego PCA y todas esas cosas.