La diapositiva perdida, versión algo más extendida

Tuve que saltarme una diapositiva en el DataBeers de Madrid del pasado jueves.

(A propósito, aquí están las 1+20 diapositivas).

La decimonona, de la que trata la entrada, viene a hablar de lo siguiente. Tenemos una base de datos con sujetos (ids) que hacen cosas en determinados momentos. No es inhabitual calcular la frecuencia de esos sujetos así:

select id, count(*) as freq
from mytabla
where fecha between current_date - 7 and current_date
group by id
;

Esa variable se utiliza frecuentemente ya sea como descriptor de los sujetos o como alimento de otros modelos.

No obstante, hacer lo anterior implica suponer que los eventos de cada sujeto siguen un proceso de Poisson homogéneo y que calculamos su frecuencia por máxima verosimilitud. En efecto,

dat <- data.frame(y = c(3,2), x = letters[1:2])
res <- glm(y~-1 + x, data = dat, family = poisson())
exp(coefficients(res))
#xa xb 
#3  2 

De lo que no quería hablar es de algo bastante manido: plantear algún tipo de modelo y ~ x1 + x2 + ..., donde x1,... son atributos de los sujetos, aleatorizando o sin aleatorizar por ids. A donde quería llegar es a que tal vez N(\lambda), un proceso de Poisson homogéneo no sea el mejor modelo y no recoja aspectos importantes del proceso puntual subyacente (véase esto y esto).