1 Erradicación de Peste porcina clásica

knitr::opts_chunk$set(echo = TRUE)

1.1 De que se trata este reporte?

La coordinación general de sanidad animal de AGROCALIDAD, mensualmente procesa información nacional de vacunación contra PPC, este reporte emitido mensualmente apoya el análisis de información y seguimiento al proceso de erradicación de la Peste porcina clásica y la prevención de la Peste porcina africana. Los técnicos nacionales del Proyecto PROZEC revisan, depuran y crean este reporte utilizando lenguaje R y RStudio con los paquetes indicadas como ‘libraries’, las bases de datos son obtenidas de los sistemas Oficiales GUIA y SIZSE.

Este es un documento R Markdown. Markdown es una sintaxis de formatación simple para HTML, PDF, y MS Word. Para más detalles en el uso de R Markdown visite http://rmarkdown.rstudio.com.

1.2 A quién está dirigido este reporte?

Este reporte es de uso de los técnicos nacionales y provinciales de Agrocalidad. Es también accesible por los operadores de vacuanción, productores industriales y pequeños productores.

library(dplyr); library(tidyr); library(lubridate); library(scales); library(ggplot2); library(readxl); library(lubridate); library(tidyverse); library(plotly); library(crosstalk); library(DT); library(raster); library(mapview); library(leaflet); library(rmapshaper);library(sjmisc)

1.3 Directorio de trabajo y archivo vacunación utilizado para análisis

setwd("~/Dropbox/1.Epidat/Consultoria ASPE/Informes dinámicos/cvmppc/")
vac1 <- read.csv("ene-2023.xls0.csv") #244269 registros
vac2 <- read.csv("feb-2023.xls0.csv") #254608
vac3 <- read.csv("mar-2023.csv") #298143
vac <- rbind(vac1, vac2, vac3)
rm(vac1, vac2, vac3)
# vac <- read.csv("feb-2023.xls0.csv")

1.4 Cuáles son mis variables en el archivo vacunación

colnames(vac)
##  [1] "Número.Certificado"         "Digitador"                 
##  [3] "Vacunador"                  "Distribuidor"              
##  [5] "Provincia.Sitio"            "Cantón.Sitio"              
##  [7] "Parroquia.Sitio"            "Nombre.Sitio"              
##  [9] "Identificación.Propietario" "Nombre.Propietario"        
## [11] "Producto"                   "Identificador.Producto"    
## [13] "Tipo.Vacunación"            "Fecha.Registro"            
## [15] "Fecha.Vacunación"           "Estado"

2 Generalidades de la vacunación

2.1 Cuántos certificados fueron anulados (serán eliminados para continuar el análisis)

length(vac[vac$Estado != "anulado",])
## [1] 16
vac <- vac[vac$Estado != "anulado",]
vac$year <- year(dmy(vac$Fecha.Vacunación))
vac$month <- month(dmy(vac$Fecha.Vacunación))

2.2 Cuál es el mes de registro de la información que analizaré y el número de vacunados?

vac %>%
  group_by(
    registro=floor_date(dmy_hms(Fecha.Registro), unit = "month")) %>%
  summarise(vacunados=length(Identificador.Producto))
## # A tibble: 3 × 2
##   registro            vacunados
##   <dttm>                  <int>
## 1 2023-01-01 00:00:00    244259
## 2 2023-02-01 00:00:00    254604
## 3 2023-03-01 00:00:00    298131

3 Visualizador espacial del número de dosis aplicadas

3.1 Preparación de datos

vigi <- vac %>%
  group_by(provincia = Provincia.Sitio, 
           canton = Cantón.Sitio, 
           parroquia = Parroquia.Sitio) %>%
  summarise(cantidad=length(unique(Identificador.Producto)))
## `summarise()` has grouped output by 'provincia', 'canton'. You can override
## using the `.groups` argument.
source("~/Dropbox/1.Epidat/Consultoria ASPE/Informes dinámicos/cvmppc/passthemap_guia.R")
## OGR data source with driver: ESRI Shapefile 
## Source: "/home/alfredo/Dropbox/1.Epidat/Consultoria ASPE/Informes dinámicos/cvmppc", layer: "nxparroquias"
## with 1040 features
## It has 8 fields
## [1] 0
## [1] "cantidad a redistribuir"
## [1] 794703
## [1] "Diferencia entre datos y mapa"
## [1] 538
## [1] "Cantidad de polígonos faltantes"
## [1] 7
## [1] "Nombre de parroquias faltantes"
## # A tibble: 7 × 1
##   pp                                              
##   <chr>                                           
## 1 guayas daule magro                              
## 2 guayas samborondon la puntilla                  
## 3 los rios puebloviejo puebloviejo                
## 4 los rios puebloviejo san juan de iluman         
## 5 manabi el carmen el paraiso la 14               
## 6 santa elena salinas carlos espinoza larrea      
## 7 santa elena salinas gral. alberto enriquez gallo
## [1] "cantidad faltante en el mapa"
## [1] 538

3.2 Número de Parroquias por Provincias en el mapa

table(ec3@data$provincia)
## 
##                          AZUAY                        BOLIVAR 
##                             76                             26 
##                          CANAR                         CARCHI 
##                             33                             32 
##                     CHIMBORAZO                       COTOPAXI 
##                             55                             40 
##                         EL ORO                     ESMERALDAS 
##                             63                             68 
##                      GALAPAGOS                         GUAYAS 
##                              8                             54 
##                       IMBABURA                           LOJA 
##                             42                             94 
##                       LOS RIOS                         MANABI 
##                             30                             75 
##                MORONA SANTIAGO                           NAPO 
##                             58                             25 
##                       ORELLANA                        PASTAZA 
##                             33                             21 
##                      PICHINCHA                    SANTA ELENA 
##                             61                             11 
## SANTO DOMINGO DE LOS TSACHILAS                      SUCUMBIOS 
##                              8                             34 
##                     TUNGURAHUA               ZAMORA CHINCHIPE 
##                             53                             37 
##             ZONA NO DELIMITADA 
##                              3
ec3@data <- ec3@data[c(1,9,11,13,15)]
ec3 <- subset(ec3, provincia != "GALAPAGOS")
ec3 <- ms_simplify(ec3)

Este es un mapa dinamico, puede hacer zoom y consultar su parroquia de interes. De un click al mapa y revise la información por parroquia. Puede cambiar entre los mapas para mejor visualización, mayor información disponible en los próximos indicadores del reporte.

mq <- mapview(ec3, zcol = "cantidad", alpha.regions = 0.3)
mq

3.3 Número de CUVS

length(unique(vac$Número.Certificado)) #857667
## [1] 37874

3.4 Número de cerdos vacunados

length(unique(vac$Identificador.Producto)) #297596
## [1] 794694

3.5 Número de cerdos vacunados por categoría

vac %>% 
  group_by(registro=floor_date(dmy_hms(Fecha.Registro), unit = "month"),
Producto) %>% 
  summarise(animales=length(Identificador.Producto)) %>% 
            mutate(Porcentaje=100*round(animales/sum(animales),4))
## `summarise()` has grouped output by 'registro'. You can override using the
## `.groups` argument.
## # A tibble: 12 × 4
## # Groups:   registro [3]
##    registro            Producto      animales Porcentaje
##    <dttm>              <chr>            <int>      <dbl>
##  1 2023-01-01 00:00:00 Cerda levante   108939      44.6 
##  2 2023-01-01 00:00:00 Cerda madre      10857       4.44
##  3 2023-01-01 00:00:00 Cerdo levante   123210      50.4 
##  4 2023-01-01 00:00:00 Verraco           1253       0.51
##  5 2023-02-01 00:00:00 Cerda levante   113715      44.7 
##  6 2023-02-01 00:00:00 Cerda madre      11661       4.58
##  7 2023-02-01 00:00:00 Cerdo levante   128062      50.3 
##  8 2023-02-01 00:00:00 Verraco           1166       0.46
##  9 2023-03-01 00:00:00 Cerda levante   134935      45.3 
## 10 2023-03-01 00:00:00 Cerda madre      12742       4.27
## 11 2023-03-01 00:00:00 Cerdo levante   148523      49.8 
## 12 2023-03-01 00:00:00 Verraco           1931       0.65

3.6 Gráfico

  ggplotly(vac %>% 
  group_by(registro=floor_date(dmy_hms(Fecha.Registro), unit = "month"),
           Producto,
           Tipo.Vacunación) %>% 
  summarise(animales=n()) %>% 
  ggplot()+
  geom_col(aes(Producto, animales))+
  facet_wrap(~Tipo.Vacunación)+
  theme(axis.text.x = element_text(angle=90)))
## `summarise()` has grouped output by 'registro', 'Producto'. You can override
## using the `.groups` argument.

4 Número de predios vacunados

vac %>%
  summarise(predios=length(unique(
    paste(Identificación.Propietario, Nombre.Sitio))))
##   predios
## 1   31527

5 Diferencia entre fecha vacunación,y fecha registro

vac$dif_vac_reg <- as.numeric(dmy(substr(vac$Fecha.Registro,1,10)) - dmy(vac$Fecha.Vacunación))
summary(vac$dif_vac_reg)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    0.00    4.00    9.00   16.15   19.00  409.00

5.1 Diferencia de ingreso de los CUV (mayor a 30 dias)

Muestra el porcentaje de certificados que son ingresados en más de 30 días

vac_diferencia_registro <- vac %>% 
  group_by(Provincia.Sitio) %>% 
  summarise(cuv_ingreso_hasta_30dias=length(unique(Número.Certificado)),
            cuv_ingreso_mayor_30_dias=length(unique(Número.Certificado[dif_vac_reg >30])),
            Porcentage_mayor_30_d =  round(cuv_ingreso_mayor_30_dias / (cuv_ingreso_mayor_30_dias+cuv_ingreso_hasta_30dias)*100)) %>% 
  arrange(desc(Porcentage_mayor_30_d))

vac_dif <- datatable(vac_diferencia_registro)
vac_dif

5.2 Boxplots de distribución de diferencia de ingreso

ggplotly(vac %>% 
  group_by(Provincia.Sitio, dif_vac_reg, Número.Certificado) %>% 
  mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
    summarise(animales_vacunados=n(),
            cuv=length(unique(Número.Certificado))) %>% 
  ggplot()+
  geom_boxplot(aes(Provincia.Sitio, dif_vac_reg), outlier.size=0.01)+
  theme_minimal()+
  theme(axis.text.x = element_text(angle=90))+
  theme(axis.text.x = element_text(size=8))+
  ylab("Diferencia en días del registro"))
## `summarise()` has grouped output by 'Provincia.Sitio', 'dif_vac_reg'. You can
## override using the `.groups` argument.

6 Número de vacunados registrados en la fecha de registro de este reporte

vac %>%
  group_by(
    registro=floor_date(dmy_hms(Fecha.Registro), unit = "month")) %>%
  summarise(vacunados=length(Identificador.Producto))
## # A tibble: 3 × 2
##   registro            vacunados
##   <dttm>                  <int>
## 1 2023-01-01 00:00:00    244259
## 2 2023-02-01 00:00:00    254604
## 3 2023-03-01 00:00:00    298131

6.1 Número de vacunados de acuerdo al mes de vacunación

6.2 Tabla

vac_mes_registro <- vac %>%
  group_by(vacunacion=floor_date(dmy(Fecha.Vacunación), unit = "month")) %>%
  summarise(vacunados=length(Identificador.Producto))
vac_mes <- datatable(vac_mes_registro)
vac_mes

6.3 Número de animales vacunados en su fecha de vacunación

6.4 Gráfico

Su fecha de registro obedece a la fecha de este reporte

registro <-vac %>%
  group_by(
    Provincia.Sitio,
    # registro=floor_date(dmy_hms(Fecha.Registro), unit = "month")
    vacunacion=floor_date(dmy(Fecha.Vacunación), unit = "month")
           ) %>%
  summarise(vacunados=length(Identificador.Producto)) %>% 
  ggplot()+
  geom_col(aes(vacunacion, vacunados))+
  theme_minimal()+
  theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Provincia.Sitio, ncol=3)
## `summarise()` has grouped output by 'Provincia.Sitio'. You can override using
## the `.groups` argument.
ggplotly(registro)

6.5 Número de vacunados y CUVs de acuerdo al mes de vacunación y provincia

6.6 Tabla

datatable(vac %>%
  group_by(Provincia.Sitio,
    vacunacion=floor_date(dmy(Fecha.Vacunación), unit = "month")) %>%
  summarise(vacunados=length(Identificador.Producto),
            CUV=length(unique(Número.Certificado))) %>% 
  arrange(desc(CUV)))
## `summarise()` has grouped output by 'Provincia.Sitio'. You can override using
## the `.groups` argument.

6.7 Número de animales vacunados por mes

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(Fecha.Vacunación), unit = "month")) %>% 
    summarise(vacunados=length(Provincia.Sitio)) %>% 
  ggplot()+
  geom_line(aes(mes, vacunados))+
  geom_point(aes(mes, vacunados), color="red")+
  geom_line(aes(mes, mean(vacunados)), colour="blue"))

6.8 Número de animales vacunados por semana

6.9 Gráfico

ggplotly(vac %>% 
  group_by(semana=floor_date(dmy(Fecha.Vacunación), unit = "week")) %>% 
    summarise(vacunados=length(Provincia.Sitio)) %>% 
  ggplot()+
  geom_line(aes(semana, vacunados))+
  geom_point(aes(semana, vacunados, color="red"))+
  geom_line(aes(semana, mean(vacunados)), colour="blue")+
  theme_minimal())

6.10 Tabla

datatable(vac %>% 
  group_by(semana=floor_date(dmy(Fecha.Vacunación), unit = "week")) %>% 
    summarise(vacunados=length(Provincia.Sitio)))

7 Número de vacunados por mes de vacunación

7.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(Fecha.Vacunación), unit = "week")) %>% 
    summarise(vacunados=length(Provincia.Sitio)) %>% 
  ggplot()+
  geom_line(aes(mes, vacunados))+
  geom_point(aes(mes, vacunados, color="red"))+
  geom_line(aes(mes, mean(vacunados)), colour="blue")+
  theme_minimal())

8 Número de animales vacunados por tipo y fecha de vacunación

8.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(Fecha.Vacunación), unit = "month"), Tipo.Vacunación) %>% 
  summarise(vacunados=length(Provincia.Sitio)) %>% 
  ggplot()+
  geom_line(aes(mes, vacunados))+
  geom_point(aes(mes, vacunados, color="red"))+
  facet_wrap(~Tipo.Vacunación, nrow=4))
## `summarise()` has grouped output by 'mes'. You can override using the `.groups`
## argument.

9 Número de animales vacunados por tipo de vacunación y fecha de vacunación

vac_tipo_fecha <- vac %>% 
  group_by(mes_registro=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"),
           mes_vacunacion=floor_date(dmy(Fecha.Vacunación), unit = "month"),
           Tipo.Vacunación) %>% 
  summarise(vacunados=length(Identificador.Producto)) %>% 
  ggplot()+
  geom_line(aes(mes_vacunacion, vacunados), colour="green")+
  geom_point(aes(mes_vacunacion, vacunados), colour="green")+
  geom_col(aes(mes_registro, vacunados, fill="red"))+
  geom_point(aes(mes_registro, vacunados, fill="red"))+
  facet_wrap(~Tipo.Vacunación, nrow=4)+
  xlab("Fechas de vacunacion (verde), fechas de registro (Rojo)")+
  theme(legend.position = "none") 
## `summarise()` has grouped output by 'mes_registro', 'mes_vacunacion'. You can
## override using the `.groups` argument.
ggplotly(vac_tipo_fecha)

#Tabla vacunación por fecha de vacunación

datatable(vac %>% 
  group_by(mes_registro=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"),
           mes_vacunacion=floor_date(dmy(Fecha.Vacunación), unit = "month"),
           Tipo.Vacunación) %>% 
  summarise(vacunados=length(Identificador.Producto)))
## `summarise()` has grouped output by 'mes_registro', 'mes_vacunacion'. You can
## override using the `.groups` argument.

10 Tabla vacunación por fecha de registro

datatable(vac %>% 
  group_by(mes_registro=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"),
            Tipo.Vacunación) %>% 
  summarise(vacunados=length(Identificador.Producto)))
## `summarise()` has grouped output by 'mes_registro'. You can override using the
## `.groups` argument.

11 Vacunación total del reporte

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"),
           Tipo.Vacunación) %>% 
  summarise(vacunados=length(Identificador.Producto)) %>% 
  ggplot()+
  geom_col(aes(mes, vacunados))+
  facet_wrap(~Tipo.Vacunación), ncol=1)
## `summarise()` has grouped output by 'mes'. You can override using the `.groups`
## argument.

12 Tabla Vacunación total del reporte

vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación) %>% 
   summarise(vacunados=length(Identificador.Producto))
## `summarise()` has grouped output by 'mes'. You can override using the `.groups`
## argument.
## # A tibble: 10 × 3
## # Groups:   mes [3]
##    mes        Tipo.Vacunación    vacunados
##    <date>     <chr>                  <int>
##  1 2023-01-01 Autoservicio          105353
##  2 2023-01-01 Brigada/Foco              42
##  3 2023-01-01 Normal(Permanente)    138864
##  4 2023-02-01 Autoservicio          123899
##  5 2023-02-01 Brigada/Foco              70
##  6 2023-02-01 Normal(Permanente)    130635
##  7 2023-03-01 Autoservicio          138316
##  8 2023-03-01 Barrido                 2913
##  9 2023-03-01 Brigada/Foco             214
## 10 2023-03-01 Normal(Permanente)    156688

13 Vacunación total por provincia

13.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación, Provincia.Sitio) %>% 
  mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
  summarise(vacunados=length(Identificador.Producto)) %>% 
  arrange(desc(vacunados)) %>% 
  ggplot()+
  geom_col(aes(Provincia.Sitio, vacunados, fill=(Tipo.Vacunación)))+
  theme(axis.text.x = element_text(angle=90)))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.

13.2 Tabla

datatable(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación, Provincia.Sitio) %>% 
  mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
  summarise(vacunados=length(Identificador.Producto)))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.

14 Vacunación total por provincias por tipo de vacunación

vac_pro_tipo <- vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación, Provincia.Sitio) %>% 
  mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
    summarise(vacunados=length(Identificador.Producto)) %>% 
  arrange(desc(vacunados)) %>% 
  ggplot()+
  geom_col(aes(Provincia.Sitio, vacunados))+
  theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol = 1)
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.
ggplotly(vac_pro_tipo)

15 Vacunación total por Cantón

15.1 Gráfico

vac_pro_tipo_cant <- vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación, Provincia.Sitio, Cantón.Sitio) %>% 
  filter(Provincia.Sitio == "Pichincha") %>% 
    summarise(vacunados=length(Identificador.Producto)) %>% 
  arrange(desc(vacunados)) %>% 
  ggplot()+
  geom_col(aes(Cantón.Sitio, vacunados))+
  theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol = 1)
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación',
## 'Provincia.Sitio'. You can override using the `.groups` argument.
ggplotly(vac_pro_tipo_cant)

15.2 Tabla

datatable(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"),
           Tipo.Vacunación, Provincia.Sitio, Cantón.Sitio) %>% 
  summarise(vacunados=length(Identificador.Producto)) %>% 
  arrange(desc(vacunados)))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación',
## 'Provincia.Sitio'. You can override using the `.groups` argument.

16 Vacunación total por parroquia

16.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación, Provincia.Sitio, Cantón.Sitio, Parroquia.Sitio) %>% 
  filter(Provincia.Sitio == "Pichincha") %>% 
    filter(Cantón.Sitio == "Quito") %>% 
    summarise(vacunados=length(Identificador.Producto)) %>% 
  ggplot()+
  geom_col(aes(Parroquia.Sitio, vacunados))+
  theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol = 1))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación',
## 'Provincia.Sitio', 'Cantón.Sitio'. You can override using the `.groups`
## argument.

16.2 Tabla

length(unique(paste(vac$Identificación.Propietario, vac$Nombre.Sitio)))
## [1] 31527
datatable(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), 
           Tipo.Vacunación, Provincia.Sitio, Cantón.Sitio, Parroquia.Sitio) %>% 
      summarise(vacunados=length(Identificador.Producto),
                predios=length(unique(paste(Identificación.Propietario, Nombre.Sitio)))))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación',
## 'Provincia.Sitio', 'Cantón.Sitio'. You can override using the `.groups`
## argument.

17 Vacunadores por tipo de Vacunación

17.1 Tabla

datatable(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"),
           Provincia.Sitio, Tipo.Vacunación, Vacunador) %>% 
    summarise(vacunados=length(Identificador.Producto)) %>% 
  arrange(desc(vacunados)))
## `summarise()` has grouped output by 'mes', 'Provincia.Sitio',
## 'Tipo.Vacunación'. You can override using the `.groups` argument.

18 Estadisticas sobre número de dosis aplicadas por tipos de vacunadores

vac %>% 
  group_by(Tipo.Vacunación, Vacunador) %>% 
    summarise(vacunados=length(Identificador.Producto)) %>% 
sjmisc::descr()
## `summarise()` has grouped output by 'Tipo.Vacunación'. You can override using
## the `.groups` argument.
## 
## ## Basic descriptive statistics
## 
## 
## Grouped by: Autoservicio
## 
##        var    type     label  n NA.prc    mean      sd     se   md trimmed
##  vacunados integer vacunados 87      0 4224.92 7518.59 806.08 1770 2521.13
##            range    iqr skew
##  52309 (7-52316) 2858.5 3.98
## 
## 
## Grouped by: Barrido
## 
##        var    type     label  n NA.prc  mean     sd   se  md trimmed
##  vacunados integer vacunados 10      0 291.3 254.86 80.6 299  260.25
##        range    iqr skew
##  815 (8-823) 344.25 0.82
## 
## 
## Grouped by: Brigada/Foco
## 
##        var    type     label n NA.prc  mean    sd    se md trimmed       range
##  vacunados integer vacunados 7      0 46.57 73.47 27.77 21   46.57 209 (1-210)
##  iqr skew
##   23 2.44
## 
## 
## Grouped by: Normal(Permanente)
## 
##        var    type     label   n NA.prc    mean      sd     se  md trimmed
##  vacunados integer vacunados 326      0 1307.32 2378.61 131.74 600  827.44
##            range  iqr skew
##  19586 (1-19587) 1338 4.73
# n=número de vacunadores
# mean= número de vacunas aplicadas por cada vacunador en media

19 Estadisticas sobre número de dosis aplicadas por vacunadores por provincia y tipo de vacunación

19.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), 
           Tipo.Vacunación, Provincia.Sitio) %>% 
    mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
    summarise(vacunados=length(Identificador.Producto),
            Media_vacunados_x_vacunador=round((vacunados/length(unique(Vacunador)))),0) %>% 
  ggplot()+
  geom_col(aes(Provincia.Sitio, Media_vacunados_x_vacunador))+
    theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol=1))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.
# n=número de vacunadores
# mean= número de vacunas aplicadas por cada vacunador en media

19.2 Tabla

datatable(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), 
           Tipo.Vacunación, Provincia.Sitio) %>% 
    mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
    summarise(vacunados=length(Identificador.Producto),
              N_vacunadores=length(unique(Vacunador)),
              Media_vacunados_x_vacunador=round((vacunados/length(unique(Vacunador))),0)))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.

20 Estadisticas sobre número de dosis aplicadas por distribuidores (Operadores) por provincia y tipo de vacunación

20.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), 
           Tipo.Vacunación, Provincia.Sitio) %>% 
    mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
    summarise(vacunados=length(Identificador.Producto),
            Media_vacunados_x_distribuidor=round((vacunados/length(unique(Distribuidor)))),0) %>% 
  ggplot()+
  geom_col(aes(Provincia.Sitio, Media_vacunados_x_distribuidor))+
    theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol=1))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.

21 Estadisticas sobre número de CUVs digitados por provincia y tipo de vacunación

21.1 Gráfico

ggplotly(vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), Tipo.Vacunación, Provincia.Sitio) %>% 
    mutate(Provincia.Sitio = (dplyr::recode(Provincia.Sitio, "Santo Domingo de los Tsáchilas" = "Santo Domingo"))) %>% 
    summarise(vacunados=length(Identificador.Producto),
            Media_CUV_digitados=round((vacunados/length(unique(Digitador)))),0) %>% 
  ggplot()+
  geom_col(aes(Provincia.Sitio, Media_CUV_digitados))+
    theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol=1))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación'. You can override
## using the `.groups` argument.

21.2 Tabla

vac_digitador <- vac %>% 
  group_by(mes=floor_date(dmy(substr(vac$Fecha.Registro,1,10)), unit = "month"), 
           Tipo.Vacunación, Provincia.Sitio, Digitador) %>% 
    summarise(vacunados=length(Identificador.Producto),
            Media_CUV_digitados_por_digitador=round((vacunados/length(unique(Digitador))),0))
## `summarise()` has grouped output by 'mes', 'Tipo.Vacunación',
## 'Provincia.Sitio'. You can override using the `.groups` argument.
ggplotly(ggplot(vac_digitador)+
  geom_col(aes(Provincia.Sitio, Media_CUV_digitados_por_digitador))+
  theme(axis.text.x = element_text(angle=90))+
  facet_wrap(~Tipo.Vacunación, ncol=1))
datatable(vac_digitador)

22 Créditos

Acosta, A. PhD1; Camargo, G. DVM1, Gagete, B. DVM MSc1, Pisuña, L. DVM2, Guerra S. DVM2, Zambrano C. ENG2. Universidad São Paulo1: Proyecto Análisis del sistema de vigilancia de la Peste porcina clásica en el Ecuador https://shorturl.at/ejny7. Agencia de regulación y control-AGROCALIDAD2. Apoyo: Asociación de porcicultores https://aspe.org.ec/. Jornadas de transferencia tecnológica para la erradicación de la PPC 2023 https://alfredojavier55.github.io/JTTPPC/

Visitas a este site Visitor Count