P-Valores

Misma p, distinto n, luego...

Tres situaciones. La primera:

n <- 20
y <- 15
test <- prop.test(y, n, p = .5)
test$p.value
# [1] 0.04417134
test$conf.int
# 0.5058845 0.9040674

La segunda:

n <- 200
y <- 115
test <- prop.test(y, n, p = 0.5)
test$p.value
#[1] 0.04030497
test$conf.int
# 0.5032062 0.6438648

Y la tercera:

n <- 2000
y <- 1046
test <- prop.test(y, n, p = 0.5)
test$p.value
#[1] 0.0418688
test$conf.int
# 0.5008370 0.5450738

En resumen:

  • mismo problema
  • distintos tamaños muestrales
  • mismo p-valor (aproximadamente)
  • distintos estimadores
  • distintos intervalos de confianza

La pregunta: ¿qué circunstancia es más favorable? Una respuesta, aquí.

Sobre "Predicción, estimación y atribución"

Subrayo hoy aquí tres cuestiones que considero importantes del reciente artículo Prediction, Estimation, and Attribution de B. Efron (para otra visión, véase esto).

La primera es que existe una cadena de valor en la modelización estadística que va del producto más ordinario, la predicción, a la estimación y de este, al más deseable, la atribución. En la terminología de Efron,

  • estimación consiste en la determinación de los parámetros subyacentes (e importantes) del modelo; específicamente se refiere a la estimación puntual;
  • atribución tiene que ver con intervalos de confianza, p-valores, etc. de esos parámetros.

La segunda es que la predicción es un problema fácil, mientras que la estimación (y la atribución) son mucho más complicados. Lo ilustra con un ejemplo sencillo: comparando la eficiencia de dos modelos, uno el óptimo y otro ligeramente inferior para:

No hagáis esto o se darán cuenta de que sois muy cutres

Lo que no hay que hacer nunca si no quieres que se enteren de que eres inmensamente cutre es escribir código en las líneas del siguiente seudocódigo:

m = model(y ~ a + b + c)
if (modelo.p_value(a) > .05)
    m = model(y ~ b + c)

¡No, no, no, no, NO!

P-valores y decisiones

Los números de esta entrada son reales aunque disfrazados: proceden de un proyecto real. Para medir la efectividad de una serie de modelos que hemos creado en Circiter, hemos pedido al cliente lo de siempre: que parta la lista de sujetos en dos al azar para después poder medir los éxitos y fracasos usando dos procedimientos distintos.

Pero como tenemos dudas acerca del proceso de partición —que no controlamos nosotros— hemos medido el número de éxitos y fracasos en cada uno de los grupos en una prueba previa. Esperábamos que las proporciones fuesen similares en ambos grupos y hemos obtenido esto:

Sic "scientia" facta est

Hoy escribo brevemente para comentar una herramienta con la que ayudar a pretendidos investigadores a hacer ciencia. Las instrucciones están aquí y la herramienta con la que entrenarse, aquí.

¡Feliz contribución a ese futuro que sin ciencia dizque no será!

p-valores y el perro que no ladró

Tengo un montón de artículos por ahí guardados que fueron escritos a raíz de la publicación de The ASA’s Statement on p-Values: Context, Process, and Purpose, ya en 2016, que ponía en cuestión el uso indiscriminado y acrítico de los p-valores. Algunos de ellos son este, este, este o este.

Asunto que se refiere a y abunda en todo lo que se ha escrito sobre la llamada crisis de replicabilidad, sobre la que también se ha escrito largamente.

p-curvas

Primero, una simulación:

n <- 100
delta <- 0.2
n.iter <- 10000

p_valores <- function(n, delta){
  tmp <- replicate(n.iter, {
    x <- rnorm(n)
    y <- rnorm(n, mean = delta)
    t.test(x, y)$p.value
  })

  res <- tmp[tmp < 0.05]

  hist(res, freq = FALSE, xlab = "p value", ylab = "", col = "gray", main = "histograma de p-valores publicables")

  res
}

null_effect_p_values <- p_valores(n, 0)
some_effect_p_values <- p_valores(n, delta)

Lo que simula son n.iter experimentos en los que se comparan n valores N(0,1) con otros n valores N(delta, 1) y se extrae el correspondiente p-valor. Luego se grafican los publicables (<0.05).

La tierra es redonda (p < 0.05)

A sus 72 años, en 1994, J. Cohen dejó casi para la posteridad un excelente artículo, The earth is round (p < .05).

Traduzco el resumen:

Tras cuatro décadas de severa crítica, el ritual del contraste de hipótesis (NHST) —decisiones mecánicas y dicotómicas alrededor del sagrado criterio del 0.05— todavía perdura. Este artículo repasa los problemas derivados de esta práctica, incluyendo la casi universal malinterpretación del p-valor como la probabilidad de que H0 sea falsa, la malinterpretación de su complementario como la probabilidad de una réplica exitosa y la falsa premisa de que rechazar H0 valida la teoría que condujo a la prueba. Como alternativa, se recomiendan el análisis exploratorio de datos y los métodos gráficos, la mejora y la estandarización progresiva de las medidas, el énfasis en la estimación de los tamaños de los efectos usando intervalos de confianza y el uso adecuado de los métodos estadísticos disponibles. Para garantizar la generalización, los sicólogos deben apoyarse, como ocurre en el resto de las ciencias, en la replicación.

Ruido de alarmas, ruido de p-valores; mucho, mucho ruido, tanto, tanto ruido

Me estoy volviendo intolerante al ruido. Y esta mañana (¿qué carajos hago levantado tan temprano?) no había forma de que dejase de sonar la alarma de unos andamios de la plaza, no paraba la batidora del bar desde donde escribo y, encima, esto, esto, esto, esto, esto, esto,…

Son todas noticias relacionadas con la publicación de esto, un artículo que describe un estudio clínico (¡con 84 sujetos!) en el que se comparan dos grupos (uno tratado y otro no) que,