Posts

Sr. Python, muchas gracias por su candidatura; ya le llamaremos cuando... tenga modelos mixtos

Era casi todavía el siglo XX cuando yo, desesperado por hacer cosas que consideraba normales y que SAS no me permitía, pregunté a un profesor por algo como C pero para estadística. Y el profesor me contó que conocía a alguien que conocía a alguien que conocía a alguien que usaba una cosa nueva que se llamaba R y que podía servirme.

Fue amor a primera vista, pero esa es otra historia. La relevante aquí es que volví a hablar con aquel profesor para agradecerle el consejo y, de paso, le pregunté que por qué no lo usaba él. Me contestó que porque en R no había modelos mixtos (aunque nlme es anterior, del 99; ¡a saber en qué estado se encontraba entonces!).

AUC = Wilcoxon

Construyo unos datos,

n <- 30
si <- data.frame(res = "si",
    score = rnorm(n, 1, 1))
no <- data.frame(res = "no",
    score = rnorm(n, 0, 1))
dat <- rbind(si, no)

que simulan los scorings de un modelo hipótetico en el que comparo unos casos positivos y otros negativos.

Comparo con el test de Wilcoxon el scoring según la etiqueta y normalizo (adecuadamente):

test <- wilcox.test(score ~ res, data = dat)$statistic
test / n^2

Por otro lado calculo el AUC:

library(pROC)
my_roc <- roc(dat$res, dat$score)
auc(my_roc)

¡Lo mismo!

Motivo: ambas expresiones dan la probabilidad de que el scoring de un sí elegido al azar sea superior al de un no elegido también al azar. Cosa que está superdocumentada en el ancho mundo.

Ya, pero ¿es viable un fact check descentralizado? Entonces, ¿qué hacer?

Me llegó ayer por Twitter lo siguiente:

Lo había publicado alguien que no conocía y retuiteado (por eso me alcanzó) una persona que sigo porque me consta que sabe de unos temas pero que ignoro en qué medida está puesta en los geopolíticos y la historia económica de las naciones del mundo.

Los datos llaman la atención: son interesantes y no obvios. Pero sabemos que la intersección de lo intersante, no obvio y cierto es prácticamente el conjunto vacío. Por lo que hay una alta probabilidad de que esos datos de presunto origen en el IMF y los muy adictos al Excel (y a meter la pata con él) Rienhart & Rogoff hayan sido embellecidos.

Taxis (y su huelga) y tráfico (en Madrid)

El tráfico (rodado) en una ciudad grande (como Madrid) es un sistema complejo.

Los sistemas complejos buscan equilibrios. Un ecosistema es un sistema complejo en el que los corzos comen hierba y los lobos comen corzos. El número de corzos y zorros se autodetermina mutuamente (¿Lotka-Volterra?). De tal manera, además, que siempre están en el límite de la supervivencia: es el hambre y la necesidad la que regula las poblaciones. Hobbes diría que la vida en un sistema complejo es desagradable, brutal y corta.

Demasiados colores (para el hijo de un daltónico)

R

Mi padre me enseñó muchas cosas (leer, sumar, etc.). Pero mi infancia fue monocromática porque era daltónico. Siempre dibujé con lápiz (primero) y tinta (después). Las témperas y los rotuladores fueron mi tormento.

R tiene colores. Un montón. Y paletas de colores. Demasiadas. Una búsqueda entre los paquetes disponibles actualmente en CRAN de color proporciona 88 coincidencias, a las que deben sumarse las 35 adicionales de colour. Algunos de esos paquetes se refieren a asuntos tales como “Optimal Block Designs for Two-Colour cDNA Microarray Experiments”, pero los más ofrecen cosas tales como:

¿Hay demasiados paquetes en R?

R

Por su importancia, traigo aquí y resumo una serie de argumentos que he encontrado en otra parte acerca del ecosistema de paquetes en R. Que son:

  • Muchos paquetes no tienen el soporte adecuado a medio plazo.
  • Además, hay demasiados.
  • Pero su calidad es desigual.
  • Y muchos reinventan la rueda (lo manifiesta la escasa interdependencia entre los paquetes).
  • Finalmente, no es para nada sencillo identificar el paquete que puede ser útil para un fin determinado.

Cada cual elige los problemas que quiere tener (y R decidió tener los de un bazar y no los de una catedral).

Sobre la tesis de Sánchez (y no es lo que se espera de mí)

Me preguntaron mucho (antes de los últimos seis o siete circos mediáticos) sobre la tesis de Sánchez, cuando estaba en el candelabro. La bajé, la leí en parte (muchas de las páginas más infumables en diagonal, lo reconozco) y me centré en la parte estadística.

Que es un completo despropósito: es una especie de apéndice que no se usa en el resto del texto, una suerte de añadido para darle una mínima pincelada de matematicidad a la cosa. Hay unas correlaciones basadas en unas pocas observaciones elevadas a la categoría de causalidad; unas regresiones lineales que tienen pinta de haber sido calculadas con Excel; una huérfana fórmula en algo que parece $\LaTeX$ que no tiene que ver con el contexto (parece tomada de algún sitio donde se hablaba de otra cosa), etc. Todo eso (pero nada aprovechable) hay.

Evaluación de trucos para multiplicaciones aproximadas

En Street Fighting Mathematics (leedlo) hay un capítulo en el que se discuten trucos para realizar mental y aproximadamente operaciones del tipo 3600 × 4.4 × 10^4 × 32.

La recomendación es la siguiente: contar ceros primero, gestionar las cifras significativas después. En el caso anterior, el autor identifica 8 ceros (tres del 3600, cuatro del 10^4 y uno del 32), quedando como cifras significativas 3.6, 4.4 y 3.2.

Para estas últimas, recomienda aproximarlas a 1, pocos (alrededor de 3) y 10. Pocos es una cifra que vale tres y cuyo cuadrado es 10. Por lo tanto, 3.6 × 4.4 × 3.2 es el cubo de pocos, es decir, treinta. De manera que la aproximación de 3600 × 4.4 × 10^4 × 32 es un tres seguido de nueve ceros (en realidad, es un cinco seguido de nueve ceros).