Estadística

Error de tipo I, error de tipo II

Aquí está la noticia sobre el resultado de un error de tipo I: Danone takes legal action over milk scare.

Este otro, sobre un error de tipo II: Wave a banknote at a pundit and he’ll predict anything.

Siempre me ha llamado la atención el segundo caso: ¿tienen realmente responsabilidades penales los geólogos? He leído algunos artículos al respecto y nunca he visto el caso planteado de la manera en que voy a hacerlo aquí.

Cómo apostar si tienes que

Hace unos días recibí esto,

que es la rentabilidad de carteras de inversión (sospecho que no necesariamente reales) de usuarios de cierto portal que compiten por ver quién tiene más ojo en bolsa.

¿No os llama la atención esa rentabilidad >600%? ¿Cómo se puede alcanzar? ¿Es ese señor —a quien no conozco— un hacha de las inversiones?

Dos ideas me vienen a la cabeza. Una es esta que, pienso, no aplica. Y no lo hace porque, en particular, y como ya escribí, la apuesta de Kelly maximiza la mediana de las ganancias, pero ignora su varianza. Que, por lo que veremos luego, es el quid de la cuestión.

Los censos huelen a naftalina (y son muy caros)

Los censos huelen a naftalina. Eso de ir contando exhaustivamente cabezas, críos, cabras y cabañas ya lo hacía el rey David en su época.

Tampoco son operaciones no pequeñas. El último censo chino movilizó a seis millones de encuestadores y el de EE.UU. costó casi como el AVE a Valencia.

Coste (absoluto y relativo) de los últimos censos de diversos países europeos.

Sin embargo, eso de contar sin excepciones es un ejercicio de fuerza bruta propio de la oscura época pre-estadística. El progreso ha traído consigo dos cosas —buena la una, regular la otra—, que permiten replantear enteramente los censos.

¿Cuántos peces hay en un lago?

Quien haya estudiado estadística o probabilidad en algún tipo de institución que ofrece educación reglada se habrá topado con el problema de estimar el número de peces de un lago.

Esencialmente, lo que puede hacerse (dado que es imposible realizar un censo completo) es lo siguiente:

  • Pescar cierto número de peces, p1, marcarlos y devolverlos al lago.
  • Pescar cierto número de peces, p2, y contar cuántos de ellos fueron marcados el día anterior, n.
  • Estimar el número de peces como p1 * p2 / n (dado que la proporción de peces marcados en el lago, p1 / x debiera ser similar a la de pescados el segundo día, n / p2).

Con R puede hacerse una estimación (incluso del error), así:

La red Asia

La red Asia es esto:

Es decir, una red bayesiana. Una red bayesiana clásica sobre la que los interesados podrán saber más leyendo lo que Lauritzen y Spiegelhalter dejaron escrito sobre ella en 1988.

Pero la idea básica es la siguiente:

  • Los nodos superiores (visita a Asia, fumador) son variables observables sobre el comportamiento de unos pacientes.
  • Los nodos inferiores (rayos X, disnea) son variables también observables, síntomas de esos pacientes.
  • Los nodos centrales, los más importantes, no son observables: son diversas enfermedades que pudieran estar padeciendo los individuos en cuestión.

La pregunta que ayuda a resolver esta red bayesiana es la siguiente: conocidas (¡o no!) las variables observadas, ¿cuál es la probabilidad de que un paciente dado padezca alguna de las enfermedades (tuberculosis, bronquitis o cáncer de pulmón) correspondientes a los nodos centrales?

Statistics Online Computational Resource

Sigo sin estar fino para hacer entradas interesantes. Así que de nuevo me voy a limitar a ejercer de divulgador de lo ajeno. Y hoy le corresponde el turno al Statistics Online Computational Resource, un portal nacido con el objetivo de fomentar el conocimiento de la estadística y la probabilidad en línea.

Podría abundar sobre los recursos disponibles en SOCR, pero prefiero ahorrar mi tiempo y el de mis lectores invitándolos directamente a visitarlo y comprobarlo por sí mismos.

PC-Axis ha muerto, larga vida a JSON-stat

Igual exagero en el encabezamiento: PC-Axis, a pesar de sus defectos, a pesar de su antigüedad, etc. goza de excesiva buena salud. Debió haber pasado a mejor vida hace tiempo pero, como pasa con esas cosas, se ha enquistado.

Como alternativa a la altura de los tiempos, está JSON-stat, concebido por Xavier Badosa y que nadie como él describe:

Los principales formatos para el intercambio de datos y metadatos estadísticos están basados en XML: normalmente son complicados y prolijos. JSON-stat es un formato simple y ligero basado en JSON y perfecto para la visualización de datos, aplicaciones móviles o iniciativas de datos abiertos que ha sido diseñado para todo tipo de diseminadores.

Sexo, deporte y la cantidad de información mutua

Perdón por el titular. No soy inasequible a las modas.

La cuestión del día de hoy es la siguiente: tenemos una variable X inobservable y otra variable Y potencialmente correlacionada con X. ¿Cuánto podemos decir de X de conocida Y?

Supongamos que ambas son binarias. Si conozco Y poseo 1 bit de información. Si solo conozco X (que me da pistas sobre Y) conoceré una fracción de un bit de información (sobre Y).

La paradoja de Lord

Hace unos meses una clienta me propuso un problema relativamente (¿aparentemente?) sencillo. Era el siguiente:

  • A cierto número de pacientes se les hizo una medida (de qué, es irrelevante) antes y después de un tratamiento.
  • A unos se les aplicó el tratamiento tradicional (grupo de control).
  • A otros, uno novedoso (grupo de tratamiento).

El objetivo era el obvio: ¿es mejor el nuevo tratamiento? Parece sencillo, ¿verdad?

Hay dos mecanismos obvios para tratar de verificar la hipótesis. El primero es un t-test sobre

El cuarteto de Anscombe

F. Anscombe escribió en 1973 el artículo Graphs in Statistical Analysis para subrayar la importancia de los gráficos en el análisis estadístico.

Esencialmente, el artículo se limita a presentar cuatro conjuntos de datos distintos con la misma media, varianza, correlación y recta de regresión (excúsenseme los abusos del lenguaje). Sin embargo tienen aspectos muy distintos:

¿Os interesa saber más al respecto? Pues tenéis esto para satisfacer el apetito de culturilla y esto otro para jugar con el cuarteto en R.

"Datathon for Social Good" de Telefónica

El Datathon for Social Good es una iniciativa de Telefónica para desarrollar aplicaciones analíticas que redunden en un bien social que está teniendo lugar estos días (¡aún hay tiempo para registrarse!).

Estos son los tres tipos de datos con los que se contará:

  • Recuento de personas en el área metropolitana de Londres durante 3 semanas, por sexo, edad y grupos para cada área en rango horario. Datos inferidos de cuántos están en su hogar, en trabajo o de visita.
  • Datos abiertos y geo-localizados de medios de transporte (autobús, metro, bicicleta). Admisiones en hospitales. Localizaciones de servicios de emergencia.
  • Datos no-localizados de Twitter con el hash-tag “London”. Cantidad representativa de tuits por hora.

Además, la competición será inaugurada con una conferencia a cargo del profesor Alex “Sandy” Pentland del MIT y Gavin Starks, director del Open Data Institute el martes 3 de Septiembre.

¿Suben o bajan?

La respuesta es sí, obviamente. Pero no todo el mundo maneja la lógica retorcidamente y aplicado a la mediana de los salarios estadounidenses los más comenzaríamos a hacer distingos en lugar de encerrarnos en la tautología.

Leo en Revolutions cómo dicha mediana ha crecido un 1% anualmente desde el 2000. Pero, a la vez, la mediana ha descendido en cada uno de los grupos definidos por el nivel de estudios (sin, bachillerato, universitarios, etc.).

Medianas ponderadas en R

La mediana de 1:3 es 2. Pero puede ser que queramos dar a 1:3 los pesos 2, 1, 2. En ese caso, el cálculo de la mediana sigue siendo sencillo (y sigue siendo 2). Pero la situación puede complicarse más.

Mientras los pesos sean enteros, todavía pueden usarse trucos:

x <- 1:3
pesos <- c(2,1,2)
median(rep(x, times = pesos ))

¿Pero qué hacemos cuando hay pesos fraccionarios? Bueno, en realidad, podemos ordenar:

n <- 1000

x <- runif(n)
pesos <- runif(n)
o <- order(x)
x.o <- x[o]
pesos.o <- pesos[o]
x.o[min(which(cumsum(pesos.o) > .5 * sum(pesos.o)))]

Pero me parece más limpio usar el paquete quantreg: