encuentRo2020

Con ustedes, el dato: el bueno, el feo y el malo

JJ Merelo, @jjmerelo

JJ Merelo

  • Profe en la UGR
  • ❤ knitr, RMarkdown
  • Open science

Ennio MoRRicone, 1928-2020

Buscando la luz

Buscando la luz

El bueno

El bueno

¿Cuantas personas se han contagiado?

Datos del Datadista

Datos de Corea del Sur

Paper de Corea

CFR: Case fatality rate

world.data.filtered$CFR <- world.data.filtered$Deaths / world.data.filtered$Cases # Igual a los fallecimientos divididos por el número de casos.
ggplot(world.data.filtered, aes(x=Date,y=CFR,color=Country.Region,group=Country.Region))+ ggtitle("Evolution of CFR from February for selected countries")+ geom_line()+theme_tufte()+theme(legend.position = "bottom")

Case Fatality Rate para países con políticas COVID diferentes

Nos interesa la *individual mortality rate*: IFR

Correlación no es causalidad

Pero si conocemos la causa, la correlación nos puede ayudar a calcularla.

Correlación entre nuevos casos y fallecimientos

KO.data <- world.data[world.data$Country.Region=="Korea, South",]

ccf(KO.data$New.Cases, KO.data$New.Deaths,lag.max = 35, main=c("KO cross-correlation", "New cases vs. deceases"), xlab ='Lag', ylab='Cross-correlation')

Raw cross-correlation between daily new cases and new deaths at South Korea

TL;DR: entre 0.5 y 0.7%

Hay datos buenos

Pero no están aquí

Pero tenemos una nueva estimación de los casos – con tres semanas de retraso

Calculemos dónde se doblará la curva

Se vería así

Usando el profeta

data$cap <- 155000
data$floor <- 1
model.logistic <- prophet(data, growth='logistic')
future.logistic <- make_future_dataframe(model.logistic, periods=30)
future.logistic$cap <- 155000
future.logistic$floor <- 1
forecast.logistic <- predict(model.logistic,future.logistic)
forecast.logistic$ds <- as.Date(forecast.logistic$ds, "%Y-%m-%d")

plot of chunk plotprofeta

La curva alcanzaría el pico el 15 de abril

Pero eso fue lo único que acerté.

E incluso eso lo pongo en duda ahora

El feo

Recogida y publicación de datos: confusa

Pero nada más confuso que el cambio de la serie a mediados de mayo.

Luz confusa y borrosa

Fallecimientos: nueva serie - serie antigua

merged.data$diff.fallecimientos <- merged.data$fallecimientos.ahora - merged.data$fallecimientos
ggplot(merged.data, aes(x=fecha, y=diff.fallecimientos))+geom_point()+theme_tufte()+theme(axis.text.x = element_text(angle = 90))

plot of chunk plotdiferencia

El malo

El malo (de Pinterest)

Imagen de Pinterest

Una gráfica debe mostrar toda la información posible

Tendencia + estacionalidad + anomalías.

Buscando, una vez más, la luz.

Gráfica "ADN" con `anomalize` - hasta 21 de junio

plot of chunk adn

¿Es útil después del 21 de junio?

plot of chunk tras21

Buscando el centro

Y no encontrándolo

Camino borroso

Pero encontrando un conjunto maravilloso de herramientas

Y un grupo maravilloso de gente

Muchas gracias.