Una entrada anterior del blog ha dado lugar a una conversación interesante en Twitter:

Evolución del número de casos de #coronavirusEspana una analogía con Italia https://t.co/GhWtlFL3Df

— Raul Vaquerizo (@r_vaquerizo) March 11, 2020

Es necesario obtener los datos del Ministerio y estos datos se hallan en un PDF. Bien, tendremos que leer el PDF y crear un data frame para poder trabajar con estos datos. Para leer el PDF vamos a emplear el paquete de R tabulizer y la función extract_tables, pero necesitamos algo de talento.

La función extract_tables nos permite extraer información de un archivo PDF con R, pero es necesario especificar la página que deseamos leer (fácil) y el área que deseamos leer. ¿El área de la hoja del PDF que deseamos leer? ¿Eso qué es? Pues ese es el talento que necesitamos; con la función locate_areas vamos a encontrar esa área. Veamos el código necesario:

library(tidyverse)
library(tabulizer)

ministerio <- "https://www.mscbs.gob.es/profesionales/saludPublica/ccayes/alertasActual/nCov-China/documentos/Actualizacion_41_COVID-19.pdf"

area <- locate_areas(ministerio, pages = 2)

Al ejecutar ese código podemos seleccionar a mano alzada el área que deseamos seleccionar de la página específica del PDF:

Área de selección en el PDF

Ya estamos en disposición de ver el área a leer:

area[[1]]

Un poco complicado, pero una vez sabemos el área, crear un objeto con R que contenga la información actualizada por Comunidad Autónoma de los datos del coronavirus en España con R es así de sencillo:

pdf_lista <- extract_tables(
  ministerio,
  output = "data.frame",
  pages = c(2),
  area = list(
    c(337.89431,  90.69972, 684.23597, 510.25186)
  ),
  guess = FALSE,
  encoding = "UTF-8"
)

datos <- data.frame(pdf_lista[1])

Ahora ya tenéis los datos por Comunidad Autónoma actualizados; solo queda que alguien los tabule por día y haga representaciones gráficas. Ahora a esperar que el Ministerio no cambie el PDF. Mañana haremos algo con ellos.