P1 Cargue las librerias data.table, ggplot2, leaflet, sf y chilemapas. Además cargue la bases de datos de egresos y establecimientos, a estos objetos llamelos egresos y establecimientos respectivamente

library(data.table)
library(ggplot2)
library(leaflet)
library(sf)
library(chilemapas)
library(janitor)
library(tidyverse)
library(RColorBrewer)
establecimientos<-fread("C:/Users/Lenovo/Desktop/TAREA 3/Establecimientos.csv")

egresos<-readRDS("C:/Users/Lenovo/Desktop/TAREA 3/egresos.RDS")

P2 Visualice la distribución de las edades que egresan de la base de datos.

ggplot(egresos,aes(EDAD)) +geom_histogram()

P3 Realice un merge entre el objeto egresos y establecimientos, la variable del objeto egresos es ESTAB y de establecimientos es Código Vigente

establecimientos <-clean_names(establecimientos)
egresos_establecimientos <- merge(egresos, establecimientos, by.x= "ESTAB" ,by.y="ca3digo_vigente", all.x = T)

P4 Cree un nuevo objeto que contenga la información de los establecimientos como el nombre, longitud, latitud, nombre de la comuna.

Pista: Elimine los duplicados de establecimiento para poder crear un mapa

info <- establecimientos[!duplicated(establecimientos),.(nombre_oficial, nombre_comuna, longitud_grados_decimales, latitud_grados_decimales )]

P5 Realice un mapa con leaflet que marque los puntos de los establecimientos hospitalarios.

leaflet()%>%
  addTiles()%>%
  addCircles(data=info,lng=~longitud_grados_decimales,lat =~latitud_grados_decimales)

Recuerde que en este caso al marcar puntos y no tener una geometria de poligonos no es necesario que el objeto sea sf.

Bonus: muestre un pop up, el texto que aparezca el nombre del establecimiento y la comuna.

P6 Haga un objeto que sea la suma de los establecimientos por región y realice un merge con la generación de regiones

establecimientos_region<-establecimientos[,.N, by=.(ca3digo_regi_a3n)]
generacion_r<-chilemapas::generar_regiones()
generacion_r<-data.table(generacion_r)
generacion_r[,codigo_region:=as.numeric((str_extract(codigo_region,pattern="[:digit:]+")))]
merge6 <- merge(establecimientos_region, generacion_r, by.x= "ca3digo_regi_a3n" ,by.y="codigo_region", all.x = T)

P7 Realice un choroplet (un mapa de polígonos) que muestre el total de establecimientos por región. Debe de agregar una paleta de colores.

pal <- colorNumeric(palette = "Greens", domain = merge6$N)
merge6 [, N:= as.numeric(N)]
merge6 <- st_sf(merge6)

mapa <- leaflet(merge6$N) %>%
  addTiles() %>%
  addPolygons(data = merge6,
              fillColor = ~pal(merge6$N),
              color = "#b2aeae",
              fillOpacity = 6, 
              smoothFactor = 0.2,
              weight = 1) %>%
  addLegend(pal=pal,
            values = merge6$N,
            position = "bottomleft",
            title = "Total de Establecimientos por Region")
mapa