VARIABLE DEPENDIENTE

DATA ORIGINAL: La data se construyó a partir de la información de SALA DE LA VIGILANCIA EPIDEMIOLOGICA DE NEUMONIAS <5 años del Centro Nacional de Epidemiología, Prevención y Control de Enfermedades del año 2018 a nivel de PROVINCIAS. http://www.dge.gob.pe/salasituacional/sala/index/SALA_VIGILA/141

V.Dependiente:Numero de casos de niños(as) <5 años con neumonia –> “numcasos”

library(openxlsx)
link1= "https://docs.google.com/spreadsheets/d/e/2PACX-1vT1w842ldEsmlvPAbyPhQD6lhDHMurICPCehefpyabv8lCK-PmLjnU67IZqqZOAviHffW6EmIooL37W/pub?output=xlsx"
neumonia= read.xlsx(link1,
                    sheet= 1,
                    skipEmptyRows = T,
                    skipEmptyCols = T)
names(neumonia)= c("region", "ubigeoProvincia", "PROVINCIA","numcasos", "totalninos")
neumonia$region= NULL
neumonia$ubigeoProvincia= NULL
str(neumonia)
## 'data.frame':    195 obs. of  3 variables:
##  $ PROVINCIA : chr  "Chachapoyas" "Bagua" "Bongará" "Condorcanqui" ...
##  $ numcasos  : num  12 207 5 209 16 13 38 181 8 3 ...
##  $ totalninos: num  5076 9318 2895 8405 5781 ...

Creamos tasa para estandarizar nuestra variable numérica: V. Dependiente nueva –> “tnumcasos”

tnumcasos= (neumonia$numcasos/neumonia$total) *1000 #cantidad de casos de neumonia por cada mil niños(as) <5 años.
tneumonia = cbind(neumonia, tnumcasos)
head(tneumonia)

Analisis Univariado

summary(tneumonia)
##   PROVINCIA            numcasos        totalninos       tnumcasos     
##  Length:195         Min.   :   0.0   Min.   :   611   Min.   : 0.000  
##  Class :character   1st Qu.:  11.5   1st Qu.:  3487   1st Qu.: 2.869  
##  Mode  :character   Median :  28.0   Median :  6599   Median : 5.090  
##                     Mean   : 144.2   Mean   : 14018   Mean   : 7.093  
##                     3rd Qu.: 105.0   3rd Qu.: 12659   3rd Qu.: 9.222  
##                     Max.   :8991.0   Max.   :643902   Max.   :59.079

Interpretacion: –> MEDIA: En promedio, en el 2018 se registro en el Peru que el numero de casos de neumonia en infantes <5 años fue de 7 por cada mil niños(as) menores de 5 años.

tneumonia[which.min(tneumonia$tnumcasos),] 

Interpretacion: Donde en la provincia de Asuncion en el departamento de Áncash se registro que la tasa de neumonía en el 2018 fue 0.

tneumonia[which.max(tneumonia$tnumcasos),]

Asimismo, en Atalaya, ubicado en Ayacucho, encontramos una tasa mayor a comparacion de las otras provincias con 59 casos de neumonia por cada mil niños(as) <5 años.

VARIABLE INDEPENDIENTE

DATA Indice de salud niños <5 años a nivel de PROVINCIAS (“saludninos”)

La data del Indice está construida por: 1) Numero de casos de desnutrición infantil en el año 2007: La data se construyo a partir del documento “Mapa de Desnutrición Crónica en Niños Menores de cinco años a nivel Provincial y Distrital, 2007 elaborado por el INEI” (variable numerica) 2) Numero de casos de EDA (Enfermedad de Diarrea Aguda infantil): La data se construyó a partir de la información de SALA DE LA VIGILANCIA EPIDEMIOLOGICA DE EDA <5 años del Centro Nacional de Epidemiología, Prevención y Control de Enfermedades del año 2018 a nivel de PROVINCIAS. http://www.dge.gob.pe/salasituacional/sala/index/SALA_VIGILA/141 3) Numero de niños muertos en el año 2007 : La data se construyo a partir del documento “Mapa de Desnutrición Crónica en Niños Menores de cinco años a nivel Provincial y Distrital, 2007 elaborado por el INEI” (variable numerica)

library(openxlsx)
saludninos= read.xlsx(link1,
                    sheet= 4,
                    skipEmptyRows = T,
                    skipEmptyCols = T)
names(saludninos)= c("ubigeoProvincia", "PROVINCIA", "desnutricion", "eda", "muertes", "total", "isalud")
saludninos$ubigeoProvincia= NULL
str(saludninos)
## 'data.frame':    195 obs. of  6 variables:
##  $ PROVINCIA   : chr  "Chachapoyas" "Bagua" "Bongará" "Condorcanqui" ...
##  $ desnutricion: num  1986 3888 1072 4665 2589 ...
##  $ eda         : num  981 2916 446 3218 1418 ...
##  $ muertes     : num  23 28 13 30 30 8 46 61 9 15 ...
##  $ total       : num  5076 9318 2895 8405 5781 ...
##  $ isalud      : num  997 2277 510 2638 1346 ...

Creamos tasas para estandarizar nuestros componentes del índice

teda= (saludninos$eda/saludninos$total) *1000 #creamos tasa de eda (casos de EDA_Enfermedad de Diarrea Aguda infantil por cada mil niños(as) <5 años)
tsaludninos = cbind(saludninos, teda)
tdesnutricion= (saludninos$desnutricion/saludninos$total) *1000 #creamos tasa de desnutricion (casos de desnutricion por cada mil niños(as) <5 años)
t2saludninos= cbind(tsaludninos, tdesnutricion)
tmuertes= (saludninos$muertes/saludninos$total) *1000 #creamos tasa de mortalidad (numero de fallecidos por cada mil niños(as) <5 años)
t3saludninos= cbind(t2saludninos, tmuertes)
tisalud= (saludninos$isalud/saludninos$total)  *1000 # nuestro indice lo volvemos tasa
tfinalsalud= cbind(t3saludninos, tisalud)
tfinalsalud$desnutricion= NULL
tfinalsalud$eda= NULL
tfinalsalud$muertes= NULL
tfinalsalud$total= NULL
head(tfinalsalud)

Analisis Univariado

summary(tfinalsalud) #Interpretación: la media de la tasa de salud en niños menores a 5 años es 1879. Su valor mínimo es 325 (provincia Picota, perteneciente a San Martín) y el máximo 6209 (provincia Purus, perteneciente a Ucayali)
##   PROVINCIA             isalud              teda         tdesnutricion   
##  Length:195         Min.   :   61.67   Min.   :  21.69   Min.   : 24.66  
##  Class :character   1st Qu.:  645.50   1st Qu.: 111.41   1st Qu.:262.58  
##  Mode  :character   Median : 1238.00   Median : 160.85   Median :390.94  
##                     Mean   : 2040.96   Mean   : 188.26   Mean   :370.49  
##                     3rd Qu.: 2187.83   3rd Qu.: 218.85   3rd Qu.:479.79  
##                     Max.   :53257.00   Max.   :1487.80   Max.   :739.61  
##     tmuertes         tisalud      
##  Min.   : 1.908   Min.   : 32.51  
##  1st Qu.: 3.677   1st Qu.:148.98  
##  Median : 4.697   Median :188.36  
##  Mean   : 5.158   Mean   :187.97  
##  3rd Qu.: 6.076   3rd Qu.:222.11  
##  Max.   :13.486   Max.   :620.93

Interpretacion: –> MEDIA: En promedio en el Peru la tasa del indice de salud (en conjunto total de diarreas agudas, desnutricion y muertes) de niños <5 años fue de 187 casos por cada mil niños(as) menores de 5 años.

boxplot(tfinalsalud[6],horizontal=T, main= "Tasa del indice de salud de niños", xlab= "numero de casos por cada mil niños(as) <5 años", col = "bisque", outcol= "blue", pch = 20, cex = 1) #Interpretacion: Podemos ver que hay 4 valores atipicos. 

Interpretacion: La provincia de Picota, la cual se encuentra el departamento de San Martin es la que tiene una tasa menor en el indice de salud de niños. Es decir, donde hay menos casos de desnutricion, defuncion y diarreas por cada mil menores de <5 años.

tfinalsalud[which.min(tfinalsalud$tisalud),] 

Interpretacion: La provincia de Purus, la cual se encuentra el departamento de Ucayali es la que tiene una tasa alta en el indice de salud de niños. Es decir, donde hay mas casos de desnutricion, defuncion y diarreas por cada mil menores de <5 años.

tfinalsalud[which.max(tfinalsalud$tisalud),]

VARIABLE INDEPENDIENTE

DATA Porcentaje de niños(as) <5 años sin ningún seguro a nivel de PROVINCIAS (“nseguro”) Variable numérica La data se construyo a partir del documento “Mapa de Desnutrición Crónica en Niños Menores de cinco años a nivel Provincial y Distrital, 2007 elaborado por el INEI”

library(openxlsx)
nseguroinfan= read.xlsx(link1,
                    sheet= 3,
                    skipEmptyRows = T,
                    skipEmptyCols = T)
names(nseguroinfan)= c("ubigeoProvincia", "PROVINCIA", "noseguroinfan")
nseguroinfan$ubigeoProvincia= NULL
str(nseguroinfan)
## 'data.frame':    195 obs. of  2 variables:
##  $ PROVINCIA    : chr  "Chachapoyas" "Bagua" "Bongará" "Condorcanqui" ...
##  $ noseguroinfan: num  21.4 13.6 32.6 14.8 16.6 35.8 19.2 40.4 49.7 24.9 ...
head(nseguroinfan)

Analisis Univariado

summary(nseguroinfan) 
##   PROVINCIA         noseguroinfan  
##  Length:195         Min.   : 7.70  
##  Class :character   1st Qu.:17.25  
##  Mode  :character   Median :27.10  
##                     Mean   :28.24  
##                     3rd Qu.:37.70  
##                     Max.   :63.70

Interpretacion: En promedio en el Peru el 28.24% de los niños menores de <5 años no tiene ningun seguro.

nseguroinfan[which.min(nseguroinfan$noseguroinfan),] # interpretacion: La provincia que tiene el porcentaje con menos niños sin ningún tipo de seguro es Paruro (ubicado en Cuzco) con 7.7%.
nseguroinfan[which.max(nseguroinfan$noseguroinfan),] #interpretacion: La provincia que tiene el porcentaje con mayor niños sin ningún tipo de seguro es San Román, ubicado en Puno con 63.7%.

VARIABLES DE CONTROL

DATA Variables de control a nivel de PROVINCIAS (“vcontrol”)

La data de Variables de control está construida por: 1)Poblacion urbana (variable numerica) 2)Poblacion rural (variable numerica) 3)Costa (variable categórica dicotómica) 4)Sierra (variable categórica dicotómica) 5)Selva (variable categórica dicotómica) 6)Capital (variable categórica dicotómica)

vcontrol= read.xlsx(link1,
                    sheet=5,
                    skipEmptyRows = T,
                    skipEmptyCols = T)
names(vcontrol)= c("ubigeoProvincia","PROVINCIA", "urbano", "rural", "costa", "sierra", "selva", "capital", "region")
vcontrol$ubigeoProvincia= NULL
vcontrol[c(4:7)]=lapply(vcontrol[c(4:7)], as.factor) 

vcontrol$region = factor(vcontrol$region, 
                        levels = c(1:3),
                        labels = c("costa", "sierra", "selva"), #labels
                        ordered=F)
str(vcontrol)
## 'data.frame':    195 obs. of  8 variables:
##  $ PROVINCIA: chr  "Chachapoyas" "Bagua" "Bongará" "Condorcanqui" ...
##  $ urbano   : num  34343 33559 16460 6458 19526 ...
##  $ rural    : num  15357 38198 11005 36853 28802 ...
##  $ costa    : Factor w/ 2 levels "NO","SI": 1 1 1 1 1 1 1 1 1 1 ...
##  $ sierra   : Factor w/ 2 levels "NO","SI": 1 1 1 1 1 1 1 2 2 2 ...
##  $ selva    : Factor w/ 2 levels "NO","SI": 2 2 2 2 2 2 2 1 1 1 ...
##  $ capital  : Factor w/ 2 levels "NO","SI": 2 1 1 1 1 1 1 2 1 1 ...
##  $ region   : Factor w/ 3 levels "costa","sierra",..: 3 3 3 3 3 3 3 2 2 2 ...
head(vcontrol)

Analisis Univariado

summary(vcontrol) #Interpretación: entre urbano y rural, encontramos que el promedio del número de personas que vive en la zona urbana es casi el tripe valor del promedio del número de personas que vive en la zona rural. También detectamos que contamos con 170 provincias que no son capital; 40 que están en la costa; 107 que están en la sierra y 48 que están en la selva.
##   PROVINCIA             urbano            rural        costa    sierra  
##  Length:195         Min.   :   1251   Min.   :     0   NO:155   NO: 88  
##  Class :character   1st Qu.:  11250   1st Qu.: 13054   SI: 40   SI:107  
##  Mode  :character   Median :  23080   Median : 26822                    
##                     Mean   : 106719   Mean   : 33856                    
##                     3rd Qu.:  60330   3rd Qu.: 42088                    
##                     Max.   :7596058   Max.   :141424                    
##  selva    capital     region   
##  NO:147   NO:170   costa : 40  
##  SI: 48   SI: 25   sierra:107  
##                    selva : 48  
##                                
##                                
## 
boxplot((vcontrol[2:3]),horizontal=T, main = "Habitantes que viven en zona urbana y rural",  col = rainbow(2, alpha=0.2), border = rainbow(2, v=0.6), outcol= "orange", pch = 20, cex = 1) #Interpretacion: vemos valores atipicos en urbano y rural

## VARIABLE INDEPENDIENTE

DATA IDE a nivel de PROVINCIAS La data original del Indice de Densidad Estatal (IDE) para el Peru esta elaborado por PNUD (variable numerica)

link2="https://github.com/PoliticayGobiernoPUCP/EstadisticaPoliticaGobiernoII/raw/master/sesiones/data/idePeru.xlsx"

library(openxlsx)

datos=read.xlsx(link2, 
                sheet = 1, #hoja que cargaremos, corresponde al a?o 2012. 
                startRow = 4, #desde esta fila empezaremos a leer, aseguremonos de no perder t?tulos
                skipEmptyRows = T, skipEmptyCols = T)
datos= datos[-c(223:226),] #La data acaba en la fila 222. Eliminemos filas innecesarias
datos=datos[-c(1:3),] #La tercera fila, con informaci?n de Per?, es innecesaria. Hay que eliminarla
columnas=c(seq(5,17,2))
datos = datos[,-columnas] #Hemos dejado listas las filas. Sin embargo, tenemos columnas que no son necesarias. Podemos crear una secuencia para eliminarlas todas; es decir, que empieza en el 5 y termine en el 17 y que los saltos sean de 2.
regiones=datos[!is.na(datos$X2),] #creamos un subconjunto llamado regiones
row.names(regiones)=NULL #resetear el indice de regiones
regiones=regiones[c(1,2)] #El subconjunto debe contener solo la informaci?n del Ubigeo y del nombre de la regi?n. Seleccionemos las columnas que nos interesan que son las dichas anteriormente.
colnames(regiones) = c("ubigeoRegion", "region") #hay que ponerle nombres adecuados a las columas del subconjunto
provincias=datos[is.na(datos$X2),] #creamos un subconjunto llamado provincias. Seleccionemos ?nicamente las filas que tienen datos perdios en la columna "X2"
row.names(provincias)=NULL #resetear el indice de provincias
provincias=provincias[,-c(2)] #Eliminemos la segunda columna X2 pues no es necesaria
#hay que ingresar los nombres en el orden que se requiere
names(provincias) <- c("ubigeoProvincia", "PROVINCIA", "habitantes", "IDE", "identidad", "medicos", "asistenciasecu", "saneamiento", "electrificacion")
provincias$ubigeoRegion=provincias$ubigeoProvincia
substr(provincias$ubigeoRegion,3,6)='0000' #Como queremos que la informaci?n de la regi?n aparezca junto a la informaci?n de la provincia, debemos juntar nuestras subtablas. Retener los primeros digitos del ubigeo de regi?n. A?adirle ceros a la cola de lo que acabamos de retener.
row.names(provincias)=NULL #Hay que resetear el ?ndice
provinciasIDE = merge(provincias, regiones, by="ubigeoRegion") #Ahora podemos a?adir la informaci?n de las provincias y de las regiones en nuestra data final, es decir, juntemos distritos con informaci?n de provincias
provinciasIDE= provinciasIDE[,c(1,2,11,3:10)] # ordenando las variables de la data
# convertir las variables a numerica
provinciasIDE$habitantes= as.numeric(provinciasIDE$habitantes)
provinciasIDE$IDE= as.numeric(provinciasIDE$IDE)
provinciasIDE$'identidad' = as.numeric(provinciasIDE$'identidad')
provinciasIDE$"medicos"= as.numeric(provinciasIDE$"medicos")
provinciasIDE$ "asistenciasecu"=as.numeric(provinciasIDE$"asistenciasecu")
provinciasIDE$"saneamiento" = as.numeric(provinciasIDE$"saneamiento")
provinciasIDE$"electrificacion"= as.numeric(provinciasIDE$"electrificacion")
provinciasIDE$ubigeoRegion= NULL
provinciasIDE$region= NULL
provinciasIDE$ubigeoProvincia= NULL
head(provinciasIDE,10)

Analisis Univariado

summary(provinciasIDE) 
##   PROVINCIA           habitantes           IDE           identidad    
##  Length:194         Min.   :   4251   Min.   :0.4245   Min.   :81.97  
##  Class :character   1st Qu.:  32124   1st Qu.:0.5805   1st Qu.:96.53  
##  Mode  :character   Median :  62643   Median :0.6349   Median :97.90  
##                     Mean   : 150344   Mean   :0.6509   Mean   :97.29  
##                     3rd Qu.: 120760   3rd Qu.:0.7158   3rd Qu.:98.87  
##                     Max.   :8481415   Max.   :0.9104   Max.   :99.50  
##     medicos       asistenciasecu   saneamiento      electrificacion
##  Min.   : 2.598   Min.   :44.03   Min.   : 0.2351   Min.   :33.83  
##  1st Qu.: 6.453   1st Qu.:74.05   1st Qu.:40.9404   1st Qu.:61.31  
##  Median :10.319   Median :82.47   Median :54.1273   Median :74.08  
##  Mean   :11.844   Mean   :80.37   Mean   :56.0745   Mean   :71.97  
##  3rd Qu.:14.588   3rd Qu.:88.82   3rd Qu.:72.3645   3rd Qu.:84.70  
##  Max.   :44.741   Max.   :99.50   Max.   :99.5000   Max.   :99.50

Interpretando IDE MEDIA: En promedio la presencia del estado en las provincias es de 0.65. MEDIANA: Donde hasta el 50% de las provincias tienen un indice de presencia del Estado de 0.63.

provinciasIDE[which.min(provinciasIDE$IDE),] #Atalaya es la provincia que se encuentra en Ucayali y que tiene un indice de densidad estatal menor que el resto de provincias
provinciasIDE[which.max(provinciasIDE$IDE),] #Tacna es la provincia en donde hay una mayor presencia del Estado a diferencia del resto de las otras provincias.

No puedo medir el comportamiento de las variables porque estan en diferentes escalas por eso estandarizo la unidad de medicion de las variables con las puntuaciones z.

boxplot(scale(provinciasIDE[3:8]),horizontal=T, main = "DATA IDE",  col = rainbow(6, alpha=0.2),
        border = rainbow(6, v=0.6), outcol= "black",  pch = 20, cex = 1, las = 1,                    
        frame = F) #Interpretacion: En las puntuaiones z la media se vuelve 0 y lo demas sera medido en distancias con respecto a la media. entonces si hay valores negativos estaran por debajo de la media y si hay valores positivos estaran por encima de la media. Es decir, hay provincias que se encuentran por encima de la media como hay provincias que se encuentran por debajo de la media en cada una de las variables de la Data IDE. Se destaca, ademas, que hay valores atipicos en identidad, medicos, asistenciasecu

## VARIABLE INDEPENDIENTE

DATA IDH a nivel de PROVINCIAS La data original del Indice de Desarrollo Humano (IDH) para el Peru esta elaborado por PNUD (variable numerica)

link2="https://docs.google.com/spreadsheets/d/e/2PACX-1vTp-Zw7bYP8fpWdTMdYdHwGXmYxMJCpSR1qK0vFvuB9fQOQPm07OHYyh_NpUv4Y5qeVA5D2XeHuKxATe4NGR30/pub?output=xlsx"

IDH=read.xlsx(link2, 
                sheet = 1,
                skipEmptyRows = T, skipEmptyCols = T) #evita filas vacias / evita columnas vacias
names(IDH)= c("ubigeoProvincia", "PROVINCIA", "habitantes", "IDH", "esperanza", "secucompleta", "educatiempo", "percapitaf")
IDH$ubigeoProvincia= NULL
IDH$habitantes= NULL
str(IDH)
## 'data.frame':    195 obs. of  6 variables:
##  $ PROVINCIA   : chr  "Chachapoyas" "Bagua" "Bongara" "Condorcanqui" ...
##  $ IDH         : num  0.334 0.292 0.279 0.169 0.251 ...
##  $ esperanza   : num  72.5 73.7 72.2 70.1 71.2 ...
##  $ secucompleta: num  45.69 39.88 29.59 8.02 34.6 ...
##  $ educatiempo : num  7.4 6.56 6.14 5.25 5.17 ...
##  $ percapitaf  : num  307 241 261 148 211 ...
head(IDH)

Analisis Univariado

summary(IDH) 
##   PROVINCIA              IDH           esperanza      secucompleta   
##  Length:195         Min.   :0.1598   Min.   :64.22   Min.   : 8.021  
##  Class :character   1st Qu.:0.2303   1st Qu.:70.11   1st Qu.:32.041  
##  Mode  :character   Median :0.2731   Median :71.71   Median :45.968  
##                     Mean   :0.2918   Mean   :71.59   Mean   :47.174  
##                     3rd Qu.:0.3498   3rd Qu.:73.19   3rd Qu.:62.105  
##                     Max.   :0.5009   Max.   :76.67   Max.   :85.876  
##   educatiempo       percapitaf   
##  Min.   : 3.053   Min.   :107.8  
##  1st Qu.: 5.312   1st Qu.:166.7  
##  Median : 6.577   Median :212.3  
##  Mean   : 6.794   Mean   :241.5  
##  3rd Qu.: 8.155   3rd Qu.:296.8  
##  Max.   :11.276   Max.   :556.4

Interpretando IDH MEDIA: En promedio el desarrollo humano en las provincias es de 0.29. MEDIANA: Donde hasta el 50% de las provincias tienen un indice de desarrollo humano de 0.27.

IDH[which.min(IDH$IDH),] #Interpretacion: Pachitea es la provincia (ubicado en Huanuco) con un desarrollo humano menor a comparacion de las otras provincias del Peru.
IDH[which.max(IDH$IDH),] #Interpretacion: Lima es la provincia que tiene un mayor desarrollo humano a diferencia del resto de las provincias.

No puedo medir el comportamiento de las variables porque estan en diferentes escalas por eso estandarizo la unidad de medicion de las variables con las puntuaciones z.

boxplot(scale(IDH[2:6]),horizontal=T, main = "DATA IDH",  col = rainbow(5, alpha=0.2),
        border = rainbow(5, v=0.6), outcol= "black",  pch = 20, cex = 1,  
        las = 1,                    
        frame = F) #Interpretacion: En las puntuaiones z la media se vuelve 0 y lo demas sera medido en distancias con respecto a la media. entonces si hay valores negativos estaran por debajo de la media y si hay valores positivos estaran por encima de la media. Es decir, hay provincias que se encuentran por encima de la media como hay provincias que se encuentran por debajo de la media en cada una de las variables de la Data IDH. Se destaca, ademas, que hay valores atipicos en percapital y esperanza. Asimismo, en la caja de esperanza los datos estan mas concentrados a diferencia de las otras cajas donde se evidencia una mayr variabilidad.

## VARIABLE INDEPENDIENTE

DATA seguros a nivel de PROVINCIAS La data construida a partir de los datos de la “Plataforma digital georreferenciada Sayhuite” (variable numerica) http://www.sayhuite.gob.pe/sayhuite/sayhuite.php

seguros= read.xlsx(link1,
                    sheet=6,
                    skipEmptyRows = T,
                    skipEmptyCols = T)
names(seguros)= c("Ubigeo","PROVINCIA", "notseguros", "porSIS")
seguros[c(3:4)]=lapply(seguros[c(3:4)], as.numeric) 
seguros$Ubigeo= NULL
str(seguros)
## 'data.frame':    195 obs. of  3 variables:
##  $ PROVINCIA : chr  "Chachapoyas" "Bagua" "Bongará" "Condorcanqui" ...
##  $ notseguros: num  51.6 52.9 66.8 47 54 66.1 57.1 69.5 64.6 55.8 ...
##  $ porSIS    : num  28.7 37 22 47.5 38.3 20.6 30.9 10 25.7 35.3 ...
head(seguros)

Analisis Univariado

summary(seguros)
##   PROVINCIA           notseguros        porSIS     
##  Length:195         Min.   :23.10   Min.   : 6.20  
##  Class :character   1st Qu.:48.65   1st Qu.:16.70  
##  Mode  :character   Median :56.30   Median :27.30  
##                     Mean   :55.93   Mean   :29.68  
##                     3rd Qu.:63.35   3rd Qu.:40.65  
##                     Max.   :85.70   Max.   :68.90

Interpretando “notseguros” : % de personas que no tienen seguros MEDIA: En promedio en las provincias el % de personas que no tienen seguros es de 55.9% MEDIANA: Donde hasta el 50% de las provincias, % de personas que no tienen seguros es de 56.3%

Interpretando “porSIS”: % de personas que tiene SIS MEDIA: En promedio en las provincias el % de personas que tiene SIS es de 29.6% MEDIANA: Donde hasta el 50% de las provincias el % de personas que tiene SIS es de 27.3%

boxplot((seguros[2:3]),horizontal=T, main = "SEGUROS",  col = rainbow(2, alpha=0.2), border = rainbow(2, v=0.6), outcol= "orange", pch = 20, cex = 1, las = 1,                    
        frame = F,  ylim = c(0,100), xlab= "porcentaje" ) #Interpretacion: vemos valores atipicos en notseguros. Asimismo, es la caja donde hay menos variabilidad.

VARIABLE INDEPENDIENTE

DATA % de pobreza a nivel de PROVINCIAS La data construida a partir de los datos de la “Plataforma digital georreferenciada Sayhuite” (variable numerica) http://www.sayhuite.gob.pe/sayhuite/sayhuite.php

pobreza= read.xlsx(link1,
                    sheet=7,
                    skipEmptyRows = T,
                    skipEmptyCols = T)
names(pobreza)= c("Ubigeo","PROVINCIA", "ppobreza")
pobreza$Ubigeo= NULL
pobreza$ppobreza=as.numeric(pobreza$ppobreza)
str(pobreza)
## 'data.frame':    195 obs. of  2 variables:
##  $ PROVINCIA: chr  "Chachapoyas" "Bagua" "Bongará" "Condorcanqui" ...
##  $ ppobreza : num  48 53.8 47.9 76.3 60.9 39.1 49.7 38.5 55.9 72.5 ...
head(pobreza)

Analisis Univariado

summary(pobreza)
##   PROVINCIA            ppobreza    
##  Length:195         Min.   :15.20  
##  Class :character   1st Qu.:38.80  
##  Mode  :character   Median :58.60  
##                     Mean   :55.65  
##                     3rd Qu.:72.25  
##                     Max.   :89.20

Interpretando “ppobreza”: % de pobreza MEDIA: En promedio en las provincias el % de pobreza de 55.65% MEDIANA: Donde hasta el 50% de las provincias el % de pobreza es de 58.6%

MERGE CON TODAS LAS VARIABLES

DATA= merge(tneumonia, tfinalsalud, by= "PROVINCIA")
DATA1=merge(DATA, nseguroinfan, by= "PROVINCIA")
DATA2= merge(DATA1,vcontrol, by= "PROVINCIA")
DATA3= merge(DATA2,provinciasIDE , by="PROVINCIA")
DATA4= merge(DATA3,IDH , by= "PROVINCIA")
DATA5= merge(DATA4, seguros, by= "PROVINCIA")
final= merge(DATA5, pobreza, by= "PROVINCIA")
#para poner los paises en el indice
row.names(final)= final$PROVINCIA
final$PROVINCIA =NULL
str(final)
## 'data.frame':    149 obs. of  31 variables:
##  $ numcasos       : num  224 27 26 8 21 166 18 22 4 3 ...
##  $ totalninos     : num  9848 7461 3355 913 5990 ...
##  $ tnumcasos      : num  22.75 3.62 7.75 8.76 3.51 ...
##  $ isalud         : num  1926 1915 656 152 1388 ...
##  $ teda           : num  258 132.2 94.2 128.1 179.3 ...
##  $ tdesnutricion  : num  325 634 482 363 511 ...
##  $ tmuertes       : num  3.35 3.89 10.43 9.86 4.67 ...
##  $ tisalud        : num  196 257 196 167 232 ...
##  $ noseguroinfan  : num  13.3 12.2 9.7 49.7 17.2 15.9 23.4 17.7 10.6 24.9 ...
##  $ urbano         : num  60810 19345 14460 2528 18453 ...
##  $ rural          : num  35254 44447 12897 5467 37030 ...
##  $ costa          : Factor w/ 2 levels "NO","SI": 1 1 1 1 1 1 1 1 1 1 ...
##  $ sierra         : Factor w/ 2 levels "NO","SI": 2 2 2 2 2 2 2 2 2 2 ...
##  $ selva          : Factor w/ 2 levels "NO","SI": 1 1 1 1 1 1 1 1 1 1 ...
##  $ capital        : Factor w/ 2 levels "NO","SI": 2 1 1 1 1 1 1 1 1 1 ...
##  $ region         : Factor w/ 3 levels "costa","sierra",..: 2 2 2 2 2 2 2 2 2 2 ...
##  $ habitantes     : num  105694 73243 28318 7974 57957 ...
##  $ IDE            : num  0.747 0.577 0.633 0.658 0.559 ...
##  $ identidad      : num  97.9 98.8 97.2 98.2 97.9 ...
##  $ medicos        : num  16.93 2.63 10.45 8.59 11.18 ...
##  $ asistenciasecu : num  93.7 77.5 83.1 89.5 74.9 ...
##  $ saneamiento    : num  63 31.2 48.2 47.8 25.6 ...
##  $ electrificacion: num  90.5 76.7 70.6 79.1 62.7 ...
##  $ IDH            : num  0.354 0.191 0.209 0.254 0.237 ...
##  $ esperanza      : num  73.4 71.4 66.2 66.7 72.8 ...
##  $ secucompleta   : num  66.5 36.7 41.6 34.6 34.9 ...
##  $ educatiempo    : num  7.88 4.67 4.72 6.95 4.58 ...
##  $ percapitaf     : num  289 117 147 200 193 ...
##  $ notseguros     : num  69.5 48.1 44.1 64.6 42.7 46.9 52.1 49.2 45.9 55.8 ...
##  $ porSIS         : num  10 48.1 50 25.7 50.9 43.3 33.7 44.1 44.7 35.3 ...
##  $ ppobreza       : num  38.5 88 84.1 55.9 68.8 68.9 87.6 70.1 73.6 72.5 ...
head(final)

BLOXPLOT de las variables tasa de neumonia y capital

library(ggplot2)
ggplot(final, aes(x=capital, y=tnumcasos, fill=capital)) +
  geom_boxplot(alpha=0.3,outlier.colour = "blue") +
  labs(x="Capital", y="Tasa de neumonia por cada mil niños(as) <5 años") +   # titulo ejes y leyenda
  scale_x_discrete(labels=c("SI","NO")) +   # etiquetas del eje x
  theme(legend.position="none") +
    scale_fill_brewer(palette="RdBu")+
  coord_flip()  +
 geom_point(stat= "summary", fun.y=mean, shape=16, size=4, color="red")

Interpretacion: Las provincias que son capital presentan una menor variabilidad que las provincias que no son capital. Asimismo, la caja de capital se presentan valores atipicos. Ademas, las provincias que son capital tienen en promedio una menor tasa de neumonia por cada mil niños(as) <5 años a comparacion de las provincias que no son capital. Es decir, que las provincias que no son capital tienen una mayor tasa de neumonia en promedio.

BLOXPLOT de las variables tasa de neumonia y region

library(ggplot2)
ggplot(final, aes(x=region, y=tnumcasos, fill=region)) +
  geom_boxplot(alpha=0.3,outlier.colour = "blue") +
  labs(x="Region", y="Tasa de neumonia por cada mil niños(as) <5 años", fill= "R") +   # titulo ejes y leyenda
  scale_x_discrete(labels=c("COSTA","SIERRA","SELVA" )) +   # etiquetas del eje x
   guides(fill=FALSE) +
 coord_flip() +              
  geom_point(stat= "summary", fun.y=mean, shape=16, size=4, color="red")

Interpretacion:

En promedio las provincias de la selva presentan una tasa de neumonia mayor a comparacion de las provicias que son costa y sierra. Asimismo, vemos que en la caja de selva hay una mayor variabilidad a diferencia de las otras 2 cajas que son costa y sierra.

Analisis bivariado

Tasa de salud niños y Tasa de neumonía

Correlacion

VD= Tasa de neumonia por cada mil niños menores de 5 años (v. numérica) VI= Tasa de salud niños (v. numérica)

cor.test(final$tnumcasos, final$tisalud)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$tisalud
## t = 1.2461, df = 147, p-value = 0.2147
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.0595377  0.2587865
## sample estimates:
##       cor 
## 0.1022411

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO existe asociación entre las variables

Numero de niños sin ningún tipo de seguro y Tasa de neumonía

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Numero de niños sin ningun tipo de seguro (v. numerica)

cor.test(final$tnumcasos, final$noseguroinfan)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$noseguroinfan
## t = 1.2261, df = 147, p-value = 0.2221
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.06117521  0.25725240
## sample estimates:
##       cor 
## 0.1006145

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociación entre las variables.

Indice de densidad estatal y Tasa de neumonía

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Indice de densidad estatal (v. numerica)

cor.test(final$tnumcasos, final$IDE)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$IDE
## t = 0.36046, df = 147, p-value = 0.719
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.1317120  0.1896112
## sample estimates:
##        cor 
## 0.02971732

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociación entre las variables.

Indice de desarrollo humano y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Indice de desarrollo humano (v. numerica)

cor.test(final$tnumcasos, final$IDH)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$IDH
## t = 2.2739, df = 147, p-value = 0.02442
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.02425696 0.33520196
## sample estimates:
##       cor 
## 0.1843379

Interpretacion: El P-VALUE es MENOR a 0.05, entonces SÍ hay asociación entre las variables Indice de desarrollo humano y Tasa de neumonia

Modelo de Regresion lineal

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Indice de desarrollo humano (v. numerica)

modelo1=lm(tnumcasos~IDH,data=final)
summary(modelo1)
## 
## Call:
## lm(formula = tnumcasos ~ IDH, data = final)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -8.287 -3.958 -1.591  1.852 53.188 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept)    2.216      2.120   1.045   0.2977  
## IDH           15.790      6.944   2.274   0.0244 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.957 on 147 degrees of freedom
## Multiple R-squared:  0.03398,    Adjusted R-squared:  0.02741 
## F-statistic: 5.171 on 1 and 147 DF,  p-value: 0.02442

Interpretacion: El P-VALUE es MENOR a 0.05, entonces SÍ hay relación entre las variables y que esta es estadisticamente significativa. Interpretacion de la pendiente: si es que una provincia gana 1 punto en desarrollo humano, la tasa de neumonia por cada mil niños menores de 5 años aumenta en 15 casos en promedio. La DIRECCION del efecto es POSITIVA, es decir, cuando aumenta el IDH y aumenta la tasa de neumonia

Vemos la relación en un gráfico: Lo log para que el modelo se comporte de manera lineal

library("ggpubr")
## Loading required package: magrittr
ggscatter(final, x = "IDH", y = "tnumcasos", 
          add = "reg.line", conf.int = TRUE, 
          cor.coef = TRUE, cor.method = "pearson",
          xlab = "Tasa de neumonia por cada mil niños(as) <5 años", ylab = "Indice de desarrollo humano", xscale= "log10", yscale= "log10")
## Warning: Transformation introduced infinite values in continuous y-axis

## Warning: Transformation introduced infinite values in continuous y-axis

## Warning: Transformation introduced infinite values in continuous y-axis
## Warning: Removed 5 rows containing non-finite values (stat_smooth).
## Warning: Removed 5 rows containing non-finite values (stat_cor).

Interpretacion: R de Pearson: Es una relacion debil positiva.

Porcentaje de personas con seguro SIS y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Porcentaje de personas con seguro SIS (v. numerica)

cor.test(final$tnumcasos, final$porSIS)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$porSIS
## t = -1.0843, df = 147, p-value = 0.28
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.24634485  0.07276894
## sample estimates:
##         cor 
## -0.08907329

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociación entre las variables.

Porcentaje de personas sin seguro y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Porcentaje de personas sin seguro (v. numerica)

cor.test(final$tnumcasos, final$notseguros)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$notseguros
## t = 0.29757, df = 147, p-value = 0.7664
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.1368036  0.1846077
## sample estimates:
##       cor 
## 0.0245361

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociación entre las variables.

Porcentaje de pobreza y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Porcentaje de pobreza (v. numerica)

cor.test(final$tnumcasos, final$ppobreza)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$ppobreza
## t = -2.1115, df = 147, p-value = 0.03642
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.32344499 -0.01107385
## sample estimates:
##        cor 
## -0.1715683

Interpretacion: El P-VALUE es MENOR a 0.05, entonces SÍ hay asociación entre las variables porcentaje de pobreza y Tasa de neumonia

Modelo de Regresion lineal

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Porcentaje de pobreza (v. numerica)

modelo1=lm(tnumcasos~ppobreza,data=final)
summary(modelo1)
## 
## Call:
## lm(formula = tnumcasos ~ ppobreza, data = final)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -8.628 -3.885 -1.661  1.773 52.734 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 10.03498    1.60902   6.237  4.5e-09 ***
## ppobreza    -0.05730    0.02714  -2.111   0.0364 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.974 on 147 degrees of freedom
## Multiple R-squared:  0.02944,    Adjusted R-squared:  0.02283 
## F-statistic: 4.458 on 1 and 147 DF,  p-value: 0.03642

Interpretacion: El P-VALUE es MENOR a 0.05, entonces SÍ hay relación de causalidad entre las variables y que esta es estadisticamente significativa. Interpretacion de la pendiente: si es que una provincia pierde 1% en pobreza, la tasa de neumonia por cada mil niños menores de 5 años aumenta en 0 casos en promedio. La DIRECCION del efecto es NEGATIVA, es decir, cuando disminuye la pobreza, la tasa de neumonia aumenta.

Vemos la relación en un gráfico: Lo log para que el modelo se comporte de manera lineal

library("ggpubr")
ggscatter(final, x = "ppobreza", y = "tnumcasos", 
          add = "reg.line", conf.int = TRUE, 
          cor.coef = TRUE, cor.method = "pearson",
          xlab = "Tasa de neumonia por cada mil niños(as) <5 años", ylab = "Porcentaje de pobreza", xscale= "log10", yscale= "log10")
## Warning: Transformation introduced infinite values in continuous y-axis

## Warning: Transformation introduced infinite values in continuous y-axis

## Warning: Transformation introduced infinite values in continuous y-axis
## Warning: Removed 5 rows containing non-finite values (stat_smooth).
## Warning: Removed 5 rows containing non-finite values (stat_cor).

Interpretacion: R de Pearson: Es una relacion debil inversa

Poblacion urbana y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Poblacion urbana (v. numerica)

cor.test(final$tnumcasos, final$urbano)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$urbano
## t = 1.5278, df = 147, p-value = 0.1287
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.03650834  0.28019251
## sample estimates:
##       cor 
## 0.1250256

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociación entre las variables.

Poblacion rural y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Poblacion rural (v. numerica)

cor.test(final$tnumcasos, final$rural)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$rural
## t = 0.60013, df = 147, p-value = 0.5493
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.1122553  0.2085789
## sample estimates:
##        cor 
## 0.04943699

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociacion entre las variables.

Numero de habitantes y Tasa de neumonia

Correlacion

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Numero de habitantes (v. numerica)

cor.test(final$tnumcasos, final$habitantes)
## 
##  Pearson's product-moment correlation
## 
## data:  final$tnumcasos and final$habitantes
## t = 1.5577, df = 147, p-value = 0.1215
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.03406918  0.28244144
## sample estimates:
##       cor 
## 0.1274289

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociacion entre las variables.

Costa y Tasa de neumonia

Prueba T

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Costa (v. categorica dicotomica)

t.test(final$tnumcasos~final$costa,var.equal = T)
## 
##  Two Sample t-test
## 
## data:  final$tnumcasos by final$costa
## t = 1.1257, df = 147, p-value = 0.2621
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -1.195922  4.361646
## sample estimates:
## mean in group NO mean in group SI 
##         7.198901         5.616039

Interpretacion: El P-VALUE es MAYOR a 0.05, entonces NO hay asociación entre las variables.

Sierra y Tasa de neumonia

Prueba T

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Sierra (v. categorica dicotomica)

t.test(final$tnumcasos~final$sierra,var.equal = T)
## 
##  Two Sample t-test
## 
## data:  final$tnumcasos by final$sierra
## t = 2.4889, df = 147, p-value = 0.01393
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  0.5863226 5.1063628
## sample estimates:
## mean in group NO mean in group SI 
##         8.444504         5.598161

Interpretacion: El P-VALUE es MENOR a 0.05, por lo tanto podemos concluir que la diferencia de medias entre las provincias que son de la sierra y las provincias que no son de la sierra son estadisticamente significativas. Es decir, las provincias que son sierra en promedio tienen una tasa menor de neumonia a diferencia de las provincias que no son de la sierra.

Selva y Tasa de neumonia

Prueba T

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Selva (v. categorica dicotomica)

t.test(final$tnumcasos~final$selva,var.equal = T)
## 
##  Two Sample t-test
## 
## data:  final$tnumcasos by final$selva
## t = -4.2167, df = 147, p-value = 4.314e-05
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -8.082767 -2.924138
## sample estimates:
## mean in group NO mean in group SI 
##         5.603136        11.106589

Interpretacion: El P-VALUE es MENOR a 0.05, por lo tanto podemos concluir que la diferencia de medias entre las provincias que son de la selva y las provincias que no son de la selva son estadisticamente significativas. Es decir, las provincias que son selva en promedio tienen una tasa mayor de neumonia a diferencia de las provincias que no son de la selva.

Capital y Tasa de neumonia

Prueba T

VD= Tasa de prevalencia de casos de niños menores de 5 años (v. numerica) VI= Capital (v. categorica dicotomica)

t.test(final$tnumcasos~final$capital,var.equal = T)
## 
##  Two Sample t-test
## 
## data:  final$tnumcasos by final$capital
## t = -3.884, df = 147, p-value = 0.0001549
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -8.957767 -2.916136
## sample estimates:
## mean in group NO mean in group SI 
##         5.942515        11.879467

Interpretacion: El P-VALUE es MENOR a 0.05, por lo tanto podemos concluir que la diferencia de medias entre las provincias que son de la costa y las provincias que no son de la costa son estadisticamente significativas. Es decir, las provincias que son costa en promedio tienen una tasa mayor de neumonia a diferencia de las provincias que no son de la costa.

Analisis Multivariado

ANALISIS FACTORIAL

Vamos ahora a hacer analisis factorial de los componentes del Indice de Densidad Estatal “IDE”, el Indice de Desarrollo Humano “IDH” y la Tasa de salud de niños <5 años por mil habitantes “tfinalsalud”. Aquí queremos ver cómo se juntan las variables y crear puntajes alternativos de las variables que componen cada indice. ## Analisis de IDE e IDH

final_s= as.data.frame(scale(final[,-c(1:19, 23, 24, 25, 29:31)])) #creamos subset de puntuaciones estandarizadas de las variables de IDE e IDH
head(final_s)

Matriz de correlacion

library(psych)
## 
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
pearson= cor(final_s)
pearson
##                  medicos asistenciasecu saneamiento secucompleta
## medicos        1.0000000      0.4196964   0.6735922    0.5957711
## asistenciasecu 0.4196964      1.0000000   0.4145312    0.8007907
## saneamiento    0.6735922      0.4145312   1.0000000    0.6088538
## secucompleta   0.5957711      0.8007907   0.6088538    1.0000000
## educatiempo    0.7364577      0.6831000   0.6991449    0.8670539
## percapitaf     0.7518571      0.5467186   0.7751378    0.7400428
##                educatiempo percapitaf
## medicos          0.7364577  0.7518571
## asistenciasecu   0.6831000  0.5467186
## saneamiento      0.6991449  0.7751378
## secucompleta     0.8670539  0.7400428
## educatiempo      1.0000000  0.8983882
## percapitaf       0.8983882  1.0000000
cor.plot(pearson,
         numbers=T,
         upper= FALSE,
         main="correlacion",
         show.legend = "FALSE")

Interpretacion: Las que estan en azul son las variables que mas se correlacionan y que probablemente pertenecen a una dimension.

Matriz de correlacion

library(ggplot2)
library(ggcorrplot)
ggcorrplot(pearson, method = 'circle', type = 'lower', lab = TRUE) +
  ggtitle("Correlograma") +
  theme_minimal() +
  theme(legend.position="none")

[Ojito: es el mismo grafico pero mas bonito] El coeficiente de correlación es un valor numérico definido en el rango [-1, 1]. Un coeficiente de correlación igual a -1 indica total anti-correlación entre las variables, mientras que un coeficiente de correlación igual a 1 indica correlación total entre las variables. Por supuesto, un valor igual a 0 indica que no existe correlación alguna entre las variables. A partir de la matriz de correlación podemos tener idea de dichas correlaciones, pero un correlograma nos permitirá percibir mucho mejor estas relaciones Interpretacion: los valores cercanos a 1 tendrán color rojo, mientras que los valores cercanos a -1 tendrán color azul.

KMO(final_s)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = final_s)
## Overall MSA =  0.84
## MSA for each item = 
##        medicos asistenciasecu    saneamiento   secucompleta    educatiempo 
##           0.94           0.84           0.89           0.81           0.80 
##     percapitaf 
##           0.82

Aqui esperamos que le kmo no baje por variable de 0.7 y me dice cuan apropiado es juntar mis variables y va de 0 a 1, donde 1 hay mas correspondencia entre las varaibles y 0 hay menos. Lo que esperamos es que el valor del KMO sea alto. Resultado: En nuestra caso, el MSA es 0.84 (cercano a 1), lo cual significa que es apropiado juntar mis variables.

fa.parallel(pearson, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(final_s)) # la estructura de mi data me dice cuantas indices hay o deberia formar. Por la pendiente por el salto mas grande

## Parallel analysis suggests that the number of factors =  2  and the number of components =  NA

Interpretación:R studio me indica que debería de formar 2 indices para todas mis variables puestas a prueba.

final_sF <-fa(final_s, 
              nfactors=2, 
              rotate="varimax") # lo que se cambia es la data y el numero de factores
loadings(final_sF)
## 
## Loadings:
##                MR1   MR2  
## medicos        0.760 0.286
## asistenciasecu 0.246 0.813
## saneamiento    0.765 0.278
## secucompleta   0.471 0.841
## educatiempo    0.724 0.625
## percapitaf     0.857 0.413
## 
##                  MR1   MR2
## SS loadings    2.703 2.088
## Proportion Var 0.451 0.348
## Cumulative Var 0.451 0.799

Interpretando el Cumulative Var –> 0.79: que tanto he podido recuperar de toda la variabilidad del sistema. Este sistema tenia 6 variables. Las dos dimensiones representan el 79% de las variables que ha podido recuperar.

sort(final_sF$communalities)
##        medicos    saneamiento asistenciasecu     percapitaf    educatiempo 
##      0.6586911      0.6624824      0.7213456      0.9046589      0.9152866 
##   secucompleta 
##      0.9289995

Una comunalidad es la medida en que un elemento se correlaciona con todos los demás elementos. Las comunalidades más altas son mejores. Si las comunalidades para una variable en particular son bajas (entre 0.0-0.4), entonces esa variable puede tener dificultades para cargar significativamente en cualquier factor. En este casos todas las variables aportan.

sort(final_sF$uniqueness)
##   secucompleta    educatiempo     percapitaf asistenciasecu    saneamiento 
##     0.07100390     0.08471298     0.09533948     0.27865227     0.33751711 
##        medicos 
##     0.34131009

Tenga en cuenta que cuanto mayor sea la “singularidad”, menor será la relevancia de la variable en el modelo factorial. En este caso ninguna variable es singular y no sobrepasa el 1.

sort(final_sF$complexity)
## asistenciasecu    saneamiento        medicos     percapitaf   secucompleta 
##       1.180897       1.260441       1.277386       1.440819       1.572228 
##    educatiempo 
##       1.958150

En este caso podemos ver que la complejidad de las variables que no se a podido reducir en una dimension y que podria compartir con otra dimension es educatiempo.

fa.diagram(final_sF) # grafico de los factores, de los conceptos

Interpretación: vemos en el grafico que se formulan dos conceptos entre todas las variables.

scores=as.data.frame(final_sF$scores)#MR1=indice estatal, MR2=educacion, me dice que provincia esta mejor que el otro.  
names(scores)=c("IEFA","EDUFA") # el score se crea cuando se hace el FactorAnalisis
head(scores)

Primer acercamiento: La provincia de Abancay tiene un indice estatal mejor que la provincia de Ambo. La provincia de Andahuaylas tiene un indice de educacion mejor que la provincia de Ambo

final=merge(final,scores,by=0)
head(final)
row.names(final)=final$Row.names #El merge desconfigura el indice y lo añade como una nueva columna. Podemos corregir eso:
final$Row.names=NULL
head(final)
plot(final[,c(32,33)]) #ME MUESTRA LOS PUNTOS DE ACUERDO A LAS PUNTACIONES STANDARIZADAS de las puntuaciones EDUFA y IEFA

library(ggplot2)
base=ggplot(final,aes(x=IEFA,y=EDUFA, color= region)) 
base + geom_point() + geom_text(aes(label = row.names(final)))# cambio los nombres, es una decoracion

Aqui vemos a todas las provincias del Peru DE ACUERDO A LAS PUNTACIONES STANDARIZADAS de las puntuaciones EDUFA y IEFA categorizadas por region

library(ggplot2) #Utilizamos ggplot2 para añadir los nombres de nuestros casos
base=ggplot(final,aes(x=IEFA,y=EDUFA, color= region))
base + geom_point() + geom_text(aes(label = ifelse(IEFA >0 & EDUFA >0,row.names(final),"")))

# Aqui vemos las provincias que tienen mayores puntuaciones de IEFA y EDUFA mayores de 0
base=ggplot(final,aes(x=IEFA,y=EDUFA, color= region))
base + geom_point() + geom_text(aes(label = row.names(final))) + xlim(0, 4) + ylim(0, 4) #aqui limitando los ejes 
## Warning: Removed 105 rows containing missing values (geom_point).
## Warning: Removed 105 rows containing missing values (geom_text).

library(ggrepel) #hace que los textos se vean mejor

base=ggplot(final,aes(x=IEFA,y=EDUFA, color= region))
base + geom_point() + geom_text_repel(aes(label = row.names(final))) + xlim(0, 4) + ylim(0, 4)
## Warning: Removed 105 rows containing missing values (geom_point).
## Warning: Removed 105 rows containing missing values (geom_text_repel).

Interpretacion: las provincias con un mejor Indice del Estado y mejor Indice de Educacion son los observados.

Analisis de Tasa de salud niños <5 años por mil habitantes

tfinalsalud_s= as.data.frame(scale(final[,-c(1:5, 8:33)]))
head(tfinalsalud_s)

Matriz de correlacion

library(psych)
pearson= cor(tfinalsalud_s)
pearson
##               tdesnutricion  tmuertes
## tdesnutricion     1.0000000 0.4458157
## tmuertes          0.4458157 1.0000000
cor.plot(pearson,
         numbers=T,
         upper= FALSE,
         main="correlacion",
         show.legend = "FALSE")

KMO(tfinalsalud_s)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = tfinalsalud_s)
## Overall MSA =  0.5
## MSA for each item = 
## tdesnutricion      tmuertes 
##           0.5           0.5

Aqui esperamos que le kmo no baje por variable de 0.7 y me dice cuan apropiado es juntar mis variables y va de 0 a 1, donde 1 hay mas correspondencia entre las varaibles y 0 hay menos. Lo que esperamos es que el valor del KMO sea alto. Resultado: En nuestra caso, el MSA es 0.5 (esta a la mitad de 1), lo cual significa que es apropiado juntar mis variables.

fa.parallel(pearson, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(tfinalsalud_s)) # Interpretación:R studio me indica que debería de formar 1 indice para todas mis variables puestas a prueba.

## Parallel analysis suggests that the number of factors =  1  and the number of components =  NA
tfinalsalud_sF <-fa(tfinalsalud_s, 
              nfactors=1, 
              rotate="varimax") # lo que se cambia es la data y el numero de factores
loadings(tfinalsalud_sF)
## 
## Loadings:
##               MR1  
## tdesnutricion 0.668
## tmuertes      0.668
## 
##                  MR1
## SS loadings    0.892
## Proportion Var 0.446
sort(tfinalsalud_sF$communalities)
## tdesnutricion      tmuertes 
##     0.4458157     0.4458157

Una comunalidad es la medida en que un elemento se correlaciona con todos los demás elementos. Las comunalidades más altas son mejores. Si las comunalidades para una variable en particular son bajas (entre 0.0-0.4), entonces esa variable puede tener dificultades para cargar significativamente en cualquier factor. En este casos todas las variables aportan ya que superan el 0.4

sort(tfinalsalud_sF$uniquenesses) 
## tdesnutricion      tmuertes 
##     0.5541843     0.5541843

Tenga en cuenta que cuanto mayor sea la “singularidad”, menor será la relevancia de la variable en el modelo factorial. En este caso ninguna variable es singular y no sobrepasa el 1.

sort(tfinalsalud_sF$complexity)
## tdesnutricion      tmuertes 
##             1             1

Efectivamente las complejidad de las variables se a podido reducir a una dimension.

fa.diagram(tfinalsalud_sF) # grafico de los factores, de los conceptos

scores=as.data.frame(tfinalsalud_sF$scores) # Me dice que provincia esta mejor
names(scores)=c("SALUDFA") 
head(scores)

Primer acercamiento: La provincia de Abancay tiene un indice de salud que esta debajo de la provincia de Acobamba.

final=merge(final,scores,by=0)
head(final)
row.names(final)=final$Row.names #El merge desconfigura el indice y lo añade como una nueva columna. Podemos corregir eso:
final$Row.names=NULL
head(final)

Resumiendo casos

A) Mapeando casos o Mapa de similitudes –> ESCALAMIENTO MULTIDIMENSIONAL

Lo que hace es ubicar en un plano a los casos de acuerdo a cuan cercanos son. Lo que veremos seran muchos puntos y la cercania significa cuanto se parecen. Y la lejania cuan distintos son. Aquí vamos a ubicar en el plano las provincias de acuerdo a cuan cercanos son. Es una ayuda visual. Si son cercanos es que se parecen las provincias y, si son lejanos, significará que no son parecidos entre ellas.

El primer paso para calcular el mapa de similitudes es tener la informacion sobre las distancias entre los casos. Calculamos las distancias entre nuestros casos. Solo consideramos a los componentes de nuestros indices y tambien las variables que no son numericas. Porque, solo se trabaja con numericas.

final_d =dist(final[-c(1,2,4, 8,12:18, 24, 32:34)])

Creamos el mapa de las dimensiones:

final_map <- cmdscale(final_d,eig=TRUE, k=2) # k sugiere el numero de dimensiones a dibujar --> consejo utilizar siempre en 2 dimensiones xq asi es mas facil la interpretacion, con la funcion cmdscale calculamos las posiciones de nuestros casos
final_map$GOF # mientras mas cerca a 1 mejor. El GOF es un indicador que nos dice que tan adecuado a sido juntar esas dimensiones o variables. Esto ira de 0 a 1, pero mientras mas cercano a 1 es mas adecuado y a la vez es lo que esperamos.
## [1] 0.9999999 0.9999999

Interpretación: esta super bien. A cada una de mis distancias que conseguido 0.99, 0.99 de ajuste bastante bien a pesar de haber sido reducido a 2 dimensiones

#Rapidamente podemos ver la posición de los puntos creados:
titulo="Mapa de Similitudes entre provincias"
x <- final_map$points[,1] # el punto 1 y el 2 no cambian se queda asi
y <- final_map$points[,2]
plot(x, y, main=titulo)

plot(x, y, xlab="Dimensión 1", ylab="Dimensión 2", main=titulo, 
     type="n") # 'n' evita que se pongan los puntos.
# etiquetas y colores de los puntos
text(x, y,labels = rownames(final_map$points),cex=1)

final_map_DF=as.data.frame(final_map$points) #También podríamos guardar nuestras dimensiones en un data frame:
#Poniendo colores
plot(x,y, xlab = "Dimension 1", ylab = "Dimension 2",main=titulo, type="n")
#etiquetas y colores de los puntos
columnForLabels=rownames(final_map$points)
colorForLabels= final$region
paleta=c('yellow', 'brown', "green")
text(x,y, labels = columnForLabels, cex=0.5, col=paleta[colorForLabels])
legend("bottomright",legend = levels(colorForLabels), fill=paleta,title = "¿de que provincia son?")

Interpretacion: La mayoria de las provincias de la costa se parecen porque estan cercanas. Asimismo, las provincias de la selva tambien se parecen porque estan cercanas.

final_map_DF=as.data.frame(final_map$points)

B) Conglomerando casos o Análisis de conglomerados

Donde a cada provincia lo pone en categorias. Calculamos la distancia entre los grupos que dependen de las caracteristicas de los casos: OJO, estoy utilizando el final_d.

Le estamos pidiendo que genere 3 grupos o centroides para ver cuál es el resultado según costa, sierra y selva

set.seed=3
final_clus=kmeans(final_d,centers = 3) 
final_clus$cluster #solo se quienes se van con quien, no sé las caracteristicas porque las junto
##               Abancay              Acobamba               Acomayo 
##                     1                     1                     1 
##                  Aija                  Ambo           Andahuaylas 
##                     1                     1                     1 
##              Angaraes                  Anta             Antabamba 
##                     1                     1                     1 
##      Antonio Raymondi              Arequipa                Ascope 
##                     1                     2                     1 
##               Atalaya               Ayabaca              Aymaraes 
##                     1                     1                     1 
##                 Bagua              Barranca            Bellavista 
##                     1                     1                     1 
##             Bolognesi             Cajabamba             Cajamarca 
##                     1                     1                     1 
##             Cajatambo                 Calca                 Canas 
##                     1                     1                     1 
##               Canchis             Candarave              Cangallo 
##                     1                     1                     1 
##                 Canta              Carabaya               Carhuaz 
##                     1                     1                     1 
##                 Casma              Castilla        Castrovirreyna 
##                     1                     1                     1 
##              Caylloma           Chachapoyas           Chanchamayo 
##                     1                     1                     1 
##              Chiclayo               Chincha            Chincheros 
##                     2                     1                     1 
##                 Chota              Chucuito          Chumbivilcas 
##                     1                     1                     1 
##               Chupaca             Churcampa            Condesuyos 
##                     1                     1                     1 
##          Condorcanqui Contralmirante Villar      Coronel Portillo 
##                     1                     1                     1 
##               Corongo            Cotabambas                 Cusco 
##                     1                     1                     2 
##               Cutervo           Dos de Mayo             El Collao 
##                     1                     1                     1 
##             El Dorado               Espinar            Gran Chimú 
##                     1                     1                     1 
##                  Grau           Huacaybamba             Hualgayoc 
##                     1                     1                     1 
##              Huallaga             Huamalies              Huamanga 
##                     1                     1                     1 
##           Huancabamba          Huancavelica              Huancayo 
##                     1                     1                     2 
##                Huanta                Huaral                Huaraz 
##                     1                     1                     1 
##                 Huari               Huarmey                Huaura 
##                     1                     1                     1 
##               Huaylas                   Ica                   Ilo 
##                     1                     1                     1 
##                 Islay                 Jauja         Jorge Basadre 
##                     1                     1                     1 
##                La Mar                 Lamas            Lambayeque 
##                     1                     1                     1 
##                 Lampa            Lauricocha         Leoncio Prado 
##                     1                     1                     1 
##                  Lima                Loreto               Lucanas 
##                     3                     1                     1 
##                  Luya        Mariscal Nieto                Maynas 
##                     1                     1                     2 
##                Melgar                  Moho             Moyobamba 
##                     1                     1                     1 
##                 Nazca                 Ocros                Otuzco 
##                     1                     1                     1 
##              Oxapampa             Pacasmayo              Pachitea 
##                     1                     1                     1 
##            Padre Abad                 Paita              Pallasca 
##                     1                     1                     1 
##                 Palpa          Parinacochas                Paruro 
##                     1                     1                     1 
##                 Pasco                 Pataz  Paucar del Sara Sara 
##                     1                     1                     1 
##           Paucartambo                Picota                 Pisco 
##                     1                     1                     1 
##                 Piura             Pomabamba           Puerto Inca 
##                     2                     1                     1 
##                  Puno          Quispicanchi                Recuay 
##                     1                     1                     1 
##               Requena                 Rioja           San Ignacio 
##                     1                     1                     1 
##            San Marcos            San Miguel             San Pablo 
##                     1                     1                     1 
##                Sandia                 Santa            Santa Cruz 
##                     1                     2                     1 
##     Santiago de Chuco               Sechura                Sihuas 
##                     1                     1                     1 
##                 Sucre               Sullana                 Tacna 
##                     1                     1                     1 
##                Talara             Tambopata                Tarata 
##                     1                     1                     1 
##                 Tarma              Tayacaja               Tocache 
##                     1                     1                     1 
##              Trujillo                Tumbes               Ucayali 
##                     2                     1                     1 
##              Urubamba             Utcubamba             Yarowilca 
##                     1                     1                     1 
##                 Yauli                Yauyos                Yungay 
##                     1                     1                     1 
##               Yunguyo             Zarumilla 
##                     1                     1
table(final_clus$cluster)  #esto no tiene un significado en orden
## 
##   1   2   3 
## 140   8   1

Interpretacion: Veremos que provincias están incluidas y cuáles excluidas.

Creamos un mapa

library(rgdal)
## Loading required package: sp
## rgdal: version: 1.4-4, (SVN revision 833)
##  Geospatial Data Abstraction Library extensions to R successfully loaded
##  Loaded GDAL runtime: GDAL 2.1.3, released 2017/20/01
##  Path to GDAL shared files: /usr/share/gdal/2.1
##  GDAL binary built with GEOS: TRUE 
##  Loaded PROJ.4 runtime: Rel. 4.9.2, 08 September 2015, [PJ_VERSION: 492]
##  Path to PROJ.4 shared files: (autodetected)
##  Linking to sp version: 1.3-1
folderMap='mapa'
fileName='provincias_Peru.shp' 
fileToRead=file.path(folderMap,fileName)
library(rgdal)
peruMap <- readOGR(fileToRead,stringsAsFactors=FALSE)
## OGR data source with driver: ESRI Shapefile 
## Source: "/cloud/project/mapa/provincias_Peru.shp", layer: "provincias_Peru"
## with 196 features
## It has 36 fields
## Integer64 fields read as strings:  pob pob_ur pob_h pob_m
plot(peruMap, border='grey')

peruMap$NOMBPROV= c("Chepen", "Julcan", "Otuzco", "Pacasmayo", "Trujillo", "Ascope", "Bolivar", "Pataz", "Sanchez Carrion", "Contralmirante Villar", "Tumbes", "Zarumilla", "Grau", "Chincheros", "Cotabambas", "Aymaraes", "Antabamba", "Andahuaylas", "Abancay", "Viru", "Gran Chimu", "Santiago de Chuco", "Tocache", "Tambopata", "Manu", "Tahuamanu", "San Miguel", "Yarowilca", "Cajabamba", "Celendin", "Cajamarca", "Cutervo", "Santa Cruz", "Chota", "Contumaza", "Jaen", "San Ignacio", "Tacna", "Jorge Basadre", "Candarave", "Tarata", "Hualgayoc", "Carhuaz", "Carlos Fermin Fitzcarrald", "Asuncion", "Bolognesi", "Aija", "Antonio Raymondi", "Huaraz", "Lambayeque", "Ferrenafe", "Chiclayo", "Lauricocha", "San Marcos", "Casma", "Corongo", "Paucar del Sara Sara", "Luya", "Condorcanqui", "Utcubamba", "Rodriguez de Mendoza", "Chachapoyas", "Bongara", "Bagua", "Churcampa", "Castrovirreyna", "Tayacaja", "Huaytara", "Huancavelica", "Angaraes", "Acobamba", "Victor Fajardo", "Yauyos", "Huarmey", "Huari", "Mariscal Luzuriaga", "Huaylas", "Pallasca", "Ocros", "Recuay", "Pomabamba", "Sihuas", "Santa", "Huamalies", "Huacaybamba", "Dos de Mayo", "Ambo", "Huanuco", "Huamanga", "Daniel A. Carrion", "Oxapampa", "Pasco", "Sucre", "Moyobamba", "Bellavista", "El Dorado", "Huallaga","Lamas", "Mariscal Caceres", "Picota", "Rioja", "San Martin", "Huanca Sancos", "Cangallo", "La Mar", "Huanta", "Parinacochas",  "Lucanas", "Barranca", "Cajatambo", "Lima", "Huaral", "Huarochiri", "Canta", "Canete", "San Antonio de Putina", "San Roman", "Sandia", "Yunguyo", "Huaura", "Oyon", "Espinar", "La Convencion", "Calca", "Canas", "Canchis", "Chumbivilcas", "Cusco", "Acomayo", "Anta", "Moho", "Melgar", "Chincha", "Nazca", "Ica", "Carabaya", "Azangaro", "Puno", "Lampa", "Huancane", "El Collao", "Chucuito", "Alto Amazonas", "Chupaca", "Yauli", "Junin", "Jauja", "Tarma", "Satipo", "Huancayo", "Chanchamayo", "Concepcion", "Vilcas Huaman", "Arequipa", "Camana", "Caraveli", "Castilla", "Caylloma", "Condesuyos", "Islay", "La Union", "Urubamba", "Quispicanchi", "Paucartambo", "Paruro", "San Pablo", "Purus", "Padre Abad", "Atalaya", "Coronel Portillo", "Puerto Inca", "Yungay", "Pachitea", "Palpa", "Maranon", "Leoncio Prado", "Sechura", "Putumayo", "Ilo", "General Sanchez Cerro", "Mariscal Nieto", "Maynas", "Loreto", "Pisco", "Requena", "Mariscal Ramon Castilla", "Datem del Maranon", "Ucayali", "Ayabaca", "Huancabamba", "Piura", "Sullana", "Talara", "Morropon", "Paita", "Callao")
provinciaClus=as.data.frame(final_clus$cluster)
provinciaClus
names(provinciaClus)='cluster'
provinciaClus$NAME=row.names(provinciaClus)
names(provinciaClus)= c("cluster","NOMBPROV")
str(provinciaClus)
## 'data.frame':    149 obs. of  2 variables:
##  $ cluster : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ NOMBPROV: chr  "Abancay" "Acobamba" "Acomayo" "Aija" ...
head(provinciaClus)

Unimos nuestro objeto con el mapa del Perú:

peruMap_total=merge(peruMap,provinciaClus, by= "NOMBPROV")
# colores
myColors=rainbow(3)

plot(peruMap,col='grey',border=NA)
plot(peruMap_total,col=myColors[peruMap_total$cluster],main='Grupos',border=NA,add=T)

library(leaflet)

#newMaps!
c1=peruMap_total[!is.na(peruMap_total$cluster) & peruMap_total$cluster==1,]
c2=peruMap_total[!is.na(peruMap_total$cluster) & peruMap_total$cluster==2,]
c3=peruMap_total[!is.na(peruMap_total$cluster) & peruMap_total$cluster==3,]


title="Clusters"

# base Layer
base= leaflet() %>% addProviderTiles("CartoDB.Positron") 

layer1= base %>%
        addPolygons(data=c1,color='blue',fillOpacity = 1,stroke = F,
                    group = "1")
layer_12= layer1%>%addPolygons(data=c2,color="red",fillOpacity = 1,stroke = F,
                              group = "2")

layer_123= layer_12%>%addPolygons(data=c3,color="green",fillOpacity = 1,stroke = F,
                              group = "3")
layer_123%>% addLayersControl(
        overlayGroups = c("1", "2","3"),
        options = layersControlOptions(collapsed = FALSE))

REGRESION MULTIVARIADA

Modelo 1

modelo=lm(tnumcasos~IEFA+EDUFA+SALUDFA,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + EDUFA + SALUDFA, data = final)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -9.140 -3.962 -1.228  1.712 51.617 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   6.8590     0.5631  12.180   <2e-16 ***
## IEFA          2.4337     0.9482   2.566   0.0113 *  
## EDUFA        -0.3913     0.6519  -0.600   0.5493    
## SALUDFA       0.7788     1.1762   0.662   0.5089    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.874 on 145 degrees of freedom
## Multiple R-squared:  0.0699, Adjusted R-squared:  0.05066 
## F-statistic: 3.633 on 3 and 145 DF,  p-value: 0.01447

Interpretación:

1.-¿Son estadísticamente significativas? Observamos que IEFA (variable estandarizada creada luego del análisis factorial) es estadísticamente significativas en relación a la tasa de neumonía en niños <5 años. Por otro lado, la variable SALUDFA Y EDUFA (variables estandarizada creadas luego del análisis factorial) no SON estadísticamente significativas.

2.-La dirección del efecto: La variable IEFA tiene una relación directa con la tasa de neumonía en niños <5 años. Es decir, a un mayor aumento de IEFA en las provincias, la tasa de neumonía en niños <5 años aumenta.

3.-La magnitud del efecto:
Si es que una provincia aumenta en un punto en IEFA, la tasa de neumonia aumenta en 2 casos en promedio por cada mil niños <5 años en las provincias.

Modelo 2

modelo=lm(tnumcasos~esperanza+identidad+electrificacion,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ esperanza + identidad + electrificacion, 
##     data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -15.644  -3.687  -0.968   1.833  32.753 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     164.05245   26.14797   6.274 3.83e-09 ***
## esperanza         0.04450    0.22066   0.202 0.840464    
## identidad        -1.76129    0.25638  -6.870 1.76e-10 ***
## electrificacion   0.15120    0.03914   3.863 0.000168 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.17 on 145 degrees of freedom
## Multiple R-squared:  0.2507, Adjusted R-squared:  0.2352 
## F-statistic: 16.17 on 3 and 145 DF,  p-value: 4.032e-09

Interpretación:

1.-¿Son estadísticamente significativas? Observamos que las variables identidad y electrificacion son estadísticamente significativas en relación a la tasa de neumonía en niños <5 años. Por otro lado, la variable esperanza NO ES estadísticamente significativa.

2.-La dirección del efecto: En primer lugar, la variable identidad tiene una relación indirecta con la tasa de neumonía en niños <5 años. Es decir, a un mayor aumento del % de la poblacion con acta de nacimiento(identidad), la tasa de neumonía en niños <5 años disminye. En segundo lugar, la variable electrificacion tiene una relación directa con la tasa de neumonía en niños <5 años. Es decir, a un mayor aumento del % de viviendas electrificadas(electrificacion), la tasa de neumonía en niños <5 años aumenta.

3.-La magnitud del efecto:
En primer lugar, si es que una provincia gana 1% en el porcentaje de la poblacion con acta de nacimiento(identidad), la tasa de neumonia en niños <5 años diminuye en 1 caso en promedio por cada mil niños <5 años. En segundo lugar, si es que una provincia gana 1% en el porcentaje de viviendas electrificadas(electrificacion), la tasa de neumonía en niños <5 años aumenta en promedio en 0 casos por cada mil niños <5 años.

Modelo 3

modelo=lm(tnumcasos~notseguros+porSIS+noseguroinfan,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ notseguros + porSIS + noseguroinfan, 
##     data = final)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -7.983 -3.989 -1.960  1.616 52.217 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)
## (Intercept)   11.03669    7.12159   1.550    0.123
## notseguros    -0.07634    0.08377  -0.911    0.364
## porSIS        -0.04753    0.08128  -0.585    0.560
## noseguroinfan  0.05398    0.08293   0.651    0.516
## 
## Residual standard error: 7.071 on 145 degrees of freedom
## Multiple R-squared:  0.01586,    Adjusted R-squared:  -0.004503 
## F-statistic: 0.7788 on 3 and 145 DF,  p-value: 0.5076

Interpretacion: Las variables puestas a prueba no son estadisticamente significativas con la tasa de neumonia.

Modelo 4

modelo=lm(tnumcasos~ppobreza+teda,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ ppobreza + teda, data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -17.977  -3.512  -1.012   2.577  49.438 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  4.813669   2.048261   2.350  0.02011 *  
## ppobreza    -0.025755   0.027195  -0.947  0.34518    
## teda         0.019166   0.004966   3.860  0.00017 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.666 on 146 degrees of freedom
## Multiple R-squared:  0.1193, Adjusted R-squared:  0.1072 
## F-statistic: 9.888 on 2 and 146 DF,  p-value: 9.387e-05

Interpretación:

1.-¿Son estadísticamente significativas? Observamos que teda(Tasa de enfermedad diarreica aguda en niños <5 años)es estadísticamente significativa en relación a la tasa de neumonía en niños <5 años. Por otro lado, la variable ppobreza(% de pobreza) no ES estadísticamente significativas.

2.-La dirección del efecto: La variable teda tiene una relación directa con la tasa de neumonía en niños <5 años. Es decir, a un mayor aumento de la Tasa de enfermedad diarreica aguda en niños <5 años(teda) en las provincias, la tasa de neumonía en niños <5 años aumenta.

3.-La magnitud del efecto:
Si es que una provincia aumenta en un punto la Tasa de enfermedad diarreica aguda en niños <5 años(teda), la tasa de neumonia aumenta en 0 casos en promedio por cada mil niños <5 años en las provincias.

Para el modelo final elegimos a las variables que son estadisticamente significativas

modelo=lm(tnumcasos~IEFA+identidad+teda+electrificacion,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + identidad + teda + electrificacion, 
##     data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -13.585  -3.405  -0.758   2.568  32.082 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     149.571098  23.042084   6.491 1.29e-09 ***
## IEFA              1.471334   0.637001   2.310  0.02232 *  
## identidad        -1.542039   0.248480  -6.206 5.47e-09 ***
## teda              0.011956   0.004529   2.640  0.00921 ** 
## electrificacion   0.071574   0.041803   1.712  0.08902 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.872 on 144 degrees of freedom
## Multiple R-squared:  0.326,  Adjusted R-squared:  0.3072 
## F-statistic: 17.41 on 4 and 144 DF,  p-value: 1.133e-11

Sin embargo, nos topamos con que la variable electrificacion no era estadisticamente significativa; por tanto, lo sacamos del modelo.

VARIABLES INDEPENDIENTES –> MODELO FINAL

modelo1=lm(tnumcasos~IEFA+identidad+teda,data = final) 
summary(modelo1)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + identidad + teda, data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -13.963  -2.935  -0.774   2.685  33.167 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 134.462485  21.426738   6.275 3.80e-09 ***
## IEFA          1.977880   0.567875   3.483 0.000656 ***
## identidad    -1.335124   0.218553  -6.109 8.77e-09 ***
## teda          0.013147   0.004505   2.918 0.004083 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.911 on 145 degrees of freedom
## Multiple R-squared:  0.3122, Adjusted R-squared:  0.298 
## F-statistic: 21.94 on 3 and 145 DF,  p-value: 8.977e-12

Al modelo final anterior lo vamos a controlar con las variables de control

Modelo final 1 controlada por la variable de control capital

modelo=lm(tnumcasos~IEFA+identidad+teda+capital,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + identidad + teda + capital, data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -13.805  -3.186  -0.481   2.289  31.966 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 147.613486  20.390864   7.239 2.49e-11 ***
## IEFA          0.759460   0.601386   1.263   0.2087    
## identidad    -1.480848   0.208385  -7.106 5.09e-11 ***
## teda          0.013290   0.004242   3.133   0.0021 ** 
## capitalSI     6.546966   1.479514   4.425 1.89e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.565 on 144 degrees of freedom
## Multiple R-squared:  0.3946, Adjusted R-squared:  0.3777 
## F-statistic: 23.46 on 4 and 144 DF,  p-value: 5.993e-15

Modelo final 2 controlada por la variable de control selva

modelo=lm(tnumcasos~IEFA+identidad+teda+selva,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + identidad + teda + selva, data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -13.430  -3.198  -0.548   2.868  34.132 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 116.130780  25.104228   4.626 8.23e-06 ***
## IEFA          1.895350   0.569168   3.330  0.00110 ** 
## identidad    -1.150900   0.255026  -4.513 1.32e-05 ***
## teda          0.012962   0.004493   2.885  0.00452 ** 
## selvaSI       1.881846   1.354293   1.390  0.16681    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.892 on 144 degrees of freedom
## Multiple R-squared:  0.3213, Adjusted R-squared:  0.3025 
## F-statistic: 17.04 on 4 and 144 DF,  p-value: 1.829e-11

Modelo final 3 controlada por la variable de control rural

modelo=lm(tnumcasos~IEFA+identidad+teda+rural,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + identidad + teda + rural, data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -14.347  -2.968  -0.843   2.528  33.763 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  1.284e+02  2.179e+01   5.892 2.58e-08 ***
## IEFA         2.059e+00  5.690e-01   3.619 0.000408 ***
## identidad   -1.284e+00  2.208e-01  -5.816 3.73e-08 ***
## teda         1.462e-02  4.612e-03   3.170 0.001860 ** 
## rural        2.502e-05  1.785e-05   1.402 0.163071    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.891 on 144 degrees of freedom
## Multiple R-squared:  0.3215, Adjusted R-squared:  0.3026 
## F-statistic: 17.06 on 4 and 144 DF,  p-value: 1.798e-11

Modelo final 4 controlada por la variable de control urbano

modelo=lm(tnumcasos~IEFA+identidad+teda+urbano,data = final) 
summary(modelo)
## 
## Call:
## lm(formula = tnumcasos ~ IEFA + identidad + teda + urbano, data = final)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -14.575  -3.069  -0.749   2.427  32.993 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  1.348e+02  2.139e+01   6.302 3.38e-09 ***
## IEFA         1.678e+00  6.175e-01   2.717  0.00740 ** 
## identidad   -1.341e+00  2.182e-01  -6.147 7.36e-09 ***
## teda         1.398e-02  4.548e-03   3.073  0.00253 ** 
## urbano       1.033e-06  8.431e-07   1.225  0.22249    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.901 on 144 degrees of freedom
## Multiple R-squared:  0.3193, Adjusted R-squared:  0.3004 
## F-statistic: 16.89 on 4 and 144 DF,  p-value: 2.247e-11

Resultados luego de hacer los modelos de regresion controladas por las variables de control

#Conclusiones –> Notamos que el Modelo final 1 controlada por la variable de control capital tiene un Multiple R-squared de 0.3946 lo que indica que el modelo explica un 39.46% de la varianza de la variable dependiente. Es decir, un 39.46% de la variacion de la tasa de neumonia se explica por la variacion de las variables identidad, teda y capitalSI. El resto de la varianza puede atribuirse al azar o a otras variables que no hemos incorporado al modelo. Es decir, este modelo explica mas a comparacion de los otros modelos, ya que tiene un Adjusted R-squared de 0.3777.

Diagnostico del modelo de regresion lineal

Ahora veamos si nuestro modelo es valido. El modelo elegido es el modelo final. Linealidad El primer diagnostico es saber si es graficable. Para una regresion lineal correcta, los datos deben ser lineales.

plot(modelo1, 1) # Residuals vs Fitted Plot

Interpretacion: Esperabamos que la linea roja tendiera a horizontal para que sea lineal. Sin embargo, no sucedio ello. Es decir, nuestro modelo no es lineal.

Homocedasticidad

# linea roja debe tender a horizontal
plot(modelo1, 3, col=c("blue"))  # Scale-Location Plot: Esta grafica muestra si los residuos se reparten equitativamente a lo largo de los rangos de los predictores. Es bueno si ves una linea horizontal con puntos de propagacion iguales. 

Interpretacion: Esperabamos que la linea roja tendiera a horizontal para que sea lineal. Sin embargo, no sucedio ello. Nuestro modelo no es Homocedastico. Antes de afirmar esto pasemos a hacer el bptest o el test de Breusch-Pagan –> para probar la Homocedasticidad.

library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
# null: modelo homocedastico
bptest(modelo1) # la funcion es bptest
## 
##  studentized Breusch-Pagan test
## 
## data:  modelo1
## BP = 39.348, df = 3, p-value = 1.465e-08

Interpretacion: La prueba rechaza la hipotesis de homocedastico cuando el valor de p es menor o igual a 0.05. Es decir, el modelo no es homocedastico.

Normalidad de los residuos

# Esperamos que los puntos esten cerca a la diagonal
plot(modelo1, 2, col=c("red")) # Q-Q Plot

En nuestro ejemplo, casi todos los puntos caen aproximadamente a lo largo de esta linea de referencia, por lo que no podemos asumir la normalidad. Asimismo, observamos que tanto Antonio Raymondi, Abancay y Atalaya son los que tienen mayor residuo.

–> test de shapiro es la prueba de normalidad.

shapiro.test(modelo1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  modelo1$residuals
## W = 0.90399, p-value = 2.431e-08

Interpretacion: Si el p-valor es menor a 0.05 entonces la hipotesis nula es rechazada (se concluye que los datos no vienen de una distribucion normal). De manera, el modelo no tiene una dstribucion normal.

No multicolinelidad La multicolinealidad se produce cuando existe una correlacion entre los predictores.

library(DescTools)
## 
## Attaching package: 'DescTools'
## The following objects are masked from 'package:psych':
## 
##     AUC, ICC, SD
VIF(modelo1) # > 5 es problematico # VIF es la funcion 
##      IEFA identidad      teda 
##  1.186515  1.064323  1.150678

Interpretacion: las variables se correlacionan moderadamente unas con otras

Valores influyentes valores atipicos que si afectan la regresion

plot(modelo1, 5, col=c("red")) #Para obsevar si hay valores influyentes

Interpretacion: Tenemos valores influyentes en nuestro modelo que son las provincias Antonio Raymondi y Atalaya que podrian estar afectando a nuestro modelo.