Planteamiento de la pregunta de investigación
❑ ¿Qué se quiere probar , hallar o evidenciar con este trabajo? ¿Qué factores condicionan el nivel de salario de una persona con discapacidad? ¿Qué factores determinan el salario de las personas con discapacidad?
Variables independientes
- facto
- b
- c
Metodología.
¿Cómo se va a responder a la pregunta de investigación?
¿Qué base de datos se utilizará (año, periodicidad, población objetivo, tamaño de la
muestra etc), ### Qué procesamiento de los datos que se realizará. ### Mediante qué método estadístico se logrará responder la pregunta.
Activamos las librerías
library(rio)
library(haven)
library(dslabs)
library(MASS)
library(car)
library(dplyr)
library(tidyverse)
library(DescTools)#para el pseudo R2
library(ggfortify)
library(see)
library(patchwork)
library(performance)
library(car)
library(lmtest)#para usar breusch pagan
library(nortest)#para usar Kolmogorov-Smirnov
Limpieza de la data
bd=import("Base de Datos II Estudio Nacional de la Discapacidad.sav")
bd_1=bd%>%filter(edad > 18)
data<- bd_1[,c("des_puntaje_adulto","educc","sexo","h4","h9","zona","c41_1","disc_grado_adulto", "fa1", "fa2", "fa3","fa4","fa5","fa6","fa7","fa8","fa9","fa10","fa11","fa22","fa25_6","fa32","fa32_1","fa26_3","fa26_6","fa40","d1","d2","d3","d4","d5","d6","d7","d10","d11","d12","d13","d14","d15","d16","d19","d20","d21","d22","d23","d24","d25","d26","d27","d28","d29","d34","d35","d36")]
#data<-na.omit(subdata)
Recodificación de variables
1: Pertenencia a una comunidad indígena
table(data$h9)
##
## 1 2 3 4 5 6 7 8 9 10 96
## 388 104 45 2004 42 31 15 1 97 26757 24
class(data$h9)
## [1] "numeric"
data$h9=as.numeric(data$h9)
data$indigena <- car::recode(data$h9, "1=1; 2=1; 3=1; 4=1; 5=1; 6=1; 7=1; 8=1; 9=1; 10=2; else = NA")
table(data$indigena)
##
## 1 2
## 2727 26757
2. Pertenencia a zona rural o urbana
table(data$zona)
##
## 1 2
## 24819 4689
#urbano=1; rural=2
Nivel de educación
niveles:
data$educc=as.numeric(data$educc)
data$educacion <- car::recode(data$educc, "0=0; 1=1; 2=2; 3=3; 4=4; 5=5; 6=6; else = NA")
table(data$educacion)
##
## 0 1 2 3 4 5 6
## 736 4248 3205 4093 8462 3620 5115
class(data$educacion)
## [1] "numeric"
si la persona es casada o no*
data$h4=as.numeric(data$h4)
data$casado <- car::recode(data$h4, "1=1; 2=2; 3=2; 4=2; 5=2; 6=2; 7=2; else = NA")
table(data$casado)
##
## 1 2
## 11393 18115
class(data$casado)
## [1] "numeric"
sexo, grado de discapacidad de la persona
table(data$sexo)
##
## 1 2
## 13586 15922
#1=hombre; 2=mujer
table(data$disc_grado_adulto)
##
## 0 1 2
## 9453 1518 1090
#0=persona sin discapacidad; 1= persona con discapacidad leve a moderada; 2=persona con discapacidad severa
table(data$fa33)
## < table of extent 0 >
Dolor
table(data$d19)
##
## 1 2 3 4 5 88 96
## 4543 3209 2576 1288 437 6 2
data$d19=as.numeric(data$d19)
data$dolor <- car::recode(data$d19, "0=0; 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$dolor)
##
## 1 2 3 4 5
## 4543 3209 2576 1288 437
Indicador de vista
table(data$d15)
##
## 1 2 3 4 5 88 96
## 8119 1913 1261 573 186 6 3
data$d15=as.numeric(data$d15)
data$d15 <- car::recode(data$d15, "0=0; 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d16)
##
## 1 2 3 4 5 88 96 99
## 8504 1895 1082 440 129 6 4 1
data$d16=as.numeric(data$d16)
data$d16 <- car::recode(data$d16, "0=0; 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
data$vista=data$d15+data$d16
summary(data$vista)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 2.000 2.000 2.000 3.062 4.000 10.000 17459
data$vista=(((data$d15+data$d16)-2)*5/8)
summary(data$vista)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000 0.000 0.000 0.663 1.250 5.000 17459
Elaboración de indicadores
Indicador de movilidad
table(data$d1)
##
## 1 2 3 4 5 99
## 8051 1910 1252 635 212 1
data$d1=as.numeric(data$d1)
data$d1 <- car::recode(data$d1, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d1)
##
## 1 2 3 4 5
## 8051 1910 1252 635 212
table(data$d2)
##
## 1 2 3 4 5 88 96 99
## 7961 1806 1261 673 355 2 2 1
data$d2=as.numeric(data$d2)
data$d2 <- car::recode(data$d2, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d2)
##
## 1 2 3 4 5
## 7961 1806 1261 673 355
table(data$d3)
##
## 1 2 3 4 5 96 99
## 9666 1040 710 413 225 4 3
data$d3=as.numeric(data$d3)
data$d3 <- car::recode(data$d3, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d3)
##
## 1 2 3 4 5
## 9666 1040 710 413 225
table(data$d4)
##
## 1 2 3 4 5 88 96 99
## 9598 1102 713 405 239 2 1 1
data$d4=as.numeric(data$d4)
data$d4 <- car::recode(data$d4, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d4)
##
## 1 2 3 4 5
## 9598 1102 713 405 239
table(data$d5)
##
## 1 2 3 4 5 88 99
## 7618 1631 1148 839 762 59 4
data$d5=as.numeric(data$d5)
data$d5 <- car::recode(data$d5, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d5)
##
## 1 2 3 4 5
## 7618 1631 1148 839 762
table(data$d6)
##
## 1 2 3 4 5 88 96 99
## 5869 1699 1383 1093 1449 538 5 25
data$d6=as.numeric(data$d6)
data$d6 <- car::recode(data$d6, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d6)
##
## 1 2 3 4 5
## 5869 1699 1383 1093 1449
table(data$d7)
##
## 1 2 3 4 5 88 96 99
## 9356 1097 764 494 322 16 10 2
data$d7=as.numeric(data$d7)
data$d7 <- car::recode(data$d7, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d7)
##
## 1 2 3 4 5
## 9356 1097 764 494 322
#lo estandarizamos del 1 al 5
data$movilidad=data$d1+data$d2+data$d3+data$d4+data$d5+data$d6+data$d7
summary(data$movilidad)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 7.00 7.00 8.00 11.42 13.00 35.00 18073
data$movilidad=(((data$d1+data$d2+data$d3+data$d4+data$d5+data$d6+data$d7)-7)*5/273)
summary(data$movilidad)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000 0.000 0.018 0.081 0.110 0.513 18073
Indicador cuidado personal
table(data$d10)
##
## 1 2 3 4 5 96 99
## 10956 533 311 158 101 1 1
data$d10=as.numeric(data$d10)
data$d10 <- car::recode(data$d10, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d10)
##
## 1 2 3 4 5
## 10956 533 311 158 101
table(data$d11)
##
## 1 2 3 4 5 96 99
## 11505 299 147 61 45 3 1
data$d11=as.numeric(data$d11)
data$d11 <- car::recode(data$d11, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d11)
##
## 1 2 3 4 5
## 11505 299 147 61 45
table(data$d12)
##
## 1 2 3 4 5 88 96 99
## 11407 309 172 87 80 1 4 1
data$d12=as.numeric(data$d12)
data$d12 <- car::recode(data$d12, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d12)
##
## 1 2 3 4 5
## 11407 309 172 87 80
table(data$d13)
##
## 1 2 3 4 5 88 96 99
## 9705 824 613 397 490 21 6 5
data$d13=as.numeric(data$d13)
data$d13 <- car::recode(data$d13, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d13)
##
## 1 2 3 4 5
## 9705 824 613 397 490
table(data$d14)
##
## 1 2 3 4 5 88 96 99
## 10294 932 471 188 158 12 3 3
data$d14=as.numeric(data$d14)
data$d14 <- car::recode(data$d14, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d14)
##
## 1 2 3 4 5
## 10294 932 471 188 158
data$cuidadopersonal=data$d10+data$d11+data$d12+data$d13+data$d14
summary(data$cuidadopersonal)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 5.000 5.000 5.000 6.033 6.000 25.000 17499
data$cuidadopersonal=(((data$d10+data$d11+data$d12+data$d13+data$d14)-5)*5/20)
summary(data$cuidadopersonal)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000 0.000 0.000 0.258 0.250 5.000 17499
Indicador relaciones interpersonales
table(data$d26)
##
## 1 2 3 4 5 88 99
## 10738 838 324 102 49 9 1
data$d26=as.numeric(data$d26)
data$d26 <- car::recode(data$d26, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d26)
##
## 1 2 3 4 5
## 10738 838 324 102 49
table(data$d27)
##
## 1 2 3 4 5 88 99
## 10469 991 363 102 81 48 7
data$d27=as.numeric(data$d27)
data$d27 <- car::recode(data$d27, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d27)
##
## 1 2 3 4 5
## 10469 991 363 102 81
table(data$d28)
##
## 1 2 3 4 5 88 96 99
## 10517 902 329 99 92 108 2 12
data$d28=as.numeric(data$d28)
data$d28 <- car::recode(data$d28, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d28)
##
## 1 2 3 4 5
## 10517 902 329 99 92
table(data$d29)
##
## 1 2 3 4 5 88 96 99
## 9117 631 433 209 412 1027 3 229
data$d29=as.numeric(data$d29)
data$d29 <- car::recode(data$d29, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d29)
##
## 1 2 3 4 5
## 9117 631 433 209 412
data$relacionesinterpersonales=data$d26+data$d27+data$d28+data$d29
summary(data$relacionesinterpersonales)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 4.000 4.000 4.000 4.875 5.000 20.000 18791
data$relacionesinterpersonales=(((data$d26+data$d27+data$d28+data$d29)-4)*5/16)
summary(data$relacionesinterpersonales)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000 0.000 0.000 0.273 0.312 5.000 18791
Indicador de factores ambientales
data$fa1=as.numeric(data$fa1)
data$fa1 <- car::recode(data$fa1, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa1)
##
## 1 2 3 4 5
## 1659 1230 1827 1799 5376
data$fa2=as.numeric(data$fa2)
data$fa2 <- car::recode(data$fa2, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa2)
##
## 1 2 3 4 5
## 637 652 2348 1359 6569
data$fa3=as.numeric(data$fa3)
data$fa3 <- car::recode(data$fa3, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa3)
##
## 1 2 3 4 5
## 545 550 1501 1210 7990
data$fa4=as.numeric(data$fa4)
data$fa4 <- car::recode(data$fa4, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa4)
##
## 1 2 3 4 5
## 260 263 2457 588 5870
data$fa5=as.numeric(data$fa5)
data$fa5 <- car::recode(data$fa5, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa5)
##
## 1 2 3 4 5
## 1259 1026 1461 1301 6602
data$fa6=as.numeric(data$fa6)
data$fa6 <- car::recode(data$fa6, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa6)
##
## 1 2 3 4 5
## 340 473 922 831 9477
data$fa7=as.numeric(data$fa7)
data$fa7 <- car::recode(data$fa7, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa7)
##
## 1 2 3 4 5
## 424 687 1407 1103 8428
data$fa8=as.numeric(data$fa8)
data$fa8 <- car::recode(data$fa8, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa8)
##
## 1 2 3 4 5
## 179 432 1235 970 9232
data$fa9=as.numeric(data$fa9)
data$fa9 <- car::recode(data$fa9, " 1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa9)
##
## 1 2 3 4 5
## 620 943 1705 1179 7601
data$fa10=as.numeric(data$fa10)
data$fa10 <- car::recode(data$fa10, "1=5; 2=4; 3=3; 4=2; 5=1; else = NA")
table(data$fa10)
##
## 1 2 3 4 5
## 1114 1503 2277 1223 5847
data$fa11=as.numeric(data$fa11)
data$fa11 <- car::recode(data$fa11, "1=1; 2=2; 3=3; 4=4; 5=5 ;else = NA")
data$fa32=as.numeric(data$fa32)
data$fa32 <- car::recode(data$fa32, "1=1; 2=2;else = NA")
table(data$fa32)
##
## 1 2
## 226 6816
data$fa40=as.numeric(data$fa40)
data$fa40 <- car::recode(data$fa40, "1=1; 2=2;else = NA")
table(data$fa10)
##
## 1 2 3 4 5
## 1114 1503 2277 1223 5847
summary(data$fa11)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 1.000 1.000 1.000 1.469 1.000 5.000 22498
summary(data$fa32)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 1.000 2.000 2.000 1.968 2.000 2.000 22466
#indicador
data$factores_ambientales.1=data$fa1+data$fa2+data$fa3+data$fa4+data$fa5+data$fa6+data$fa7+data$fa8+data$fa9+data$fa10
summary(data$factores_ambientales.1)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 10.00 37.00 44.00 41.91 48.00 50.00 20585
data$factores_ambientales=(((data$fa1+data$fa2+data$fa3+data$fa4+data$fa5+data$fa6+data$fa7+data$fa8+data$fa9+data$fa10)-13)*5/37)
summary(data$factores_ambientales)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -0.405 3.243 4.189 3.907 4.730 5.000 20585
hist(data$factores_ambientales)
Indicador energía y motivación
table(data$d20)
##
## 1 2 3 4 5 88 96
## 7669 1989 1492 719 187 3 2
data$d20=as.numeric(data$d20)
data$d20 <- car::recode(data$d20, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d20)
##
## 1 2 3 4 5
## 7669 1989 1492 719 187
table(data$d21)
##
## 1 2 3 4 5 88 96
## 5929 3212 1916 760 236 7 1
data$d21=as.numeric(data$d21)
data$d21 <- car::recode(data$d21, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d21)
##
## 1 2 3 4 5
## 5929 3212 1916 760 236
#indicador
table(data$energiaymotivacion)
## < table of extent 0 >
data$energiaymotivacion=data$d20+data$d21
summary(data$energiaymotivacion)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 2.000 2.000 3.000 3.504 4.000 10.000 17459
data$energiaymotivacion=(((data$d20+data$d21)-2)*5/2)
summary(data$energiaymotivacion)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000 0.000 2.500 3.761 5.000 20.000 17459
Indicador de cognición
table(data$d34)
##
## 1 2 3 4 5 88 99
## 6751 3527 1253 383 138 8 1
data$d34=as.numeric(data$d34)
data$d34 <- car::recode(data$d34, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d34)
##
## 1 2 3 4 5
## 6751 3527 1253 383 138
table(data$d36)
##
## 1 2 3 4 5 88 96 99
## 9686 1581 492 175 108 13 3 3
data$d36=as.numeric(data$d36)
data$d36 <- car::recode(data$d36, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d36)
##
## 1 2 3 4 5
## 9686 1581 492 175 108
table(data$d35)
##
## 1 2 3 4 5 88 99
## 9074 1997 660 215 106 8 1
data$d35=as.numeric(data$d35)
data$d35 <- car::recode(data$d35, " 1=1; 2=2; 3=3; 4=4; 5=5; else = NA")
table(data$d35)
##
## 1 2 3 4 5
## 9074 1997 660 215 106
data$cognicion=data$d34+data$d35+data$d36
summary(data$cognicion)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 3.000 3.000 3.000 4.295 5.000 15.000 17473
data$cognicion=(((data$d34+data$d35+data$d36)-3)*5/12)
summary(data$cognicion)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.000 0.000 0.000 0.540 0.833 5.000 17473
Puntaje de desempeño de la persona
summary(data$des_puntaje_adulto)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.00 25.05 38.02 35.13 46.68 100.00 17447
data$desempeño=
cut(data$des_puntaje_adulto,
breaks=c(0,25,50,75,100),
labels=c("bajo","medio-bajo","medio-alto","alto"))
table(data$desempeño)
##
## bajo medio-bajo medio-alto alto
## 1992 6999 2044 14
str(data$desempeño)
## Factor w/ 4 levels "bajo","medio-bajo",..: 2 NA NA NA 2 NA NA 1 2 NA ...
table(data$fa7)
##
## 1 2 3 4 5
## 424 687 1407 1103 8428
Limpiamos la data
data<-na.omit(data)
Modelo de regresión logística ordinal
data$desempeño=as.factor(data$desempeño)
modelo1<- polr(desempeño~ educacion + sexo + zona + indigena + disc_grado_adulto + c41_1 + factores_ambientales + fa11 + fa32 + fa40 + relacionesinterpersonales + movilidad, data = data, Hess=TRUE)
summary(modelo1)
## Call:
## polr(formula = desempeño ~ educacion + sexo + zona + indigena +
## disc_grado_adulto + c41_1 + factores_ambientales + fa11 +
## fa32 + fa40 + relacionesinterpersonales + movilidad, data = data,
## Hess = TRUE)
##
## Coefficients:
## Value Std. Error t value
## educacion -0.01890 0.02500 -0.7559
## sexo 0.44272 0.08022 5.5185
## zona 0.02426 0.11121 0.2182
## indigena -0.02783 0.13192 -0.2109
## disc_grado_adulto 2.35506 0.19535 12.0553
## c41_1 0.07260 0.46063 0.1576
## factores_ambientales -0.22527 0.04990 -4.5144
## fa11 0.10768 0.05277 2.0407
## fa32 -0.45787 0.26687 -1.7157
## fa40 -0.84862 0.37995 -2.2335
## relacionesinterpersonales 2.11789 0.13501 15.6864
## movilidad 25.34664 1.12347 22.5611
##
## Intercepts:
## Value Std. Error t value
## bajo|medio-bajo -2.9772 1.3454 -2.2129
## medio-bajo|medio-alto 4.2408 1.3544 3.1312
## medio-alto|alto 8446.4012 1.3544 6236.2680
##
## Residual Deviance: 4078.078
## AIC: 4108.078
Observar el p-value y determinar la significancia de las variables independientes
summary_table <- coef(summary(modelo1))
summary_table
## Value Std. Error t value
## educacion -0.01890038 0.02500257 -0.7559375
## sexo 0.44271544 0.08022372 5.5185103
## zona 0.02426205 0.11121343 0.2181575
## indigena -0.02782578 0.13192486 -0.2109215
## disc_grado_adulto 2.35505596 0.19535489 12.0552702
## c41_1 0.07260140 0.46062753 0.1576141
## factores_ambientales -0.22527238 0.04990106 -4.5143806
## fa11 0.10767986 0.05276715 2.0406609
## fa32 -0.45787064 0.26687155 -1.7156967
## fa40 -0.84862444 0.37994795 -2.2335282
## relacionesinterpersonales 2.11789239 0.13501499 15.6863504
## movilidad 25.34663980 1.12346734 22.5610829
## bajo|medio-bajo -2.97719270 1.34539046 -2.2128838
## medio-bajo|medio-alto 4.24083085 1.35439996 3.1311510
## medio-alto|alto 8446.40116811 1.35439996 6236.2680121
pval <- pnorm(abs(summary_table[, "t value"]),lower.tail = FALSE)* 2
pval
## educacion sexo zona
## 4.496867e-01 3.418854e-08 8.273064e-01
## indigena disc_grado_adulto c41_1
## 8.329486e-01 1.819348e-33 8.747609e-01
## factores_ambientales fa11 fa32
## 6.350208e-06 4.128455e-02 8.621756e-02
## fa40 relacionesinterpersonales movilidad
## 2.551413e-02 1.875320e-55 1.045325e-112
## bajo|medio-bajo medio-bajo|medio-alto medio-alto|alto
## 2.690566e-02 1.741226e-03 0.000000e+00
summary_table <- cbind(summary_table, "p value" = pval)
summary_table
## Value Std. Error t value p value
## educacion -0.01890038 0.02500257 -0.7559375 4.496867e-01
## sexo 0.44271544 0.08022372 5.5185103 3.418854e-08
## zona 0.02426205 0.11121343 0.2181575 8.273064e-01
## indigena -0.02782578 0.13192486 -0.2109215 8.329486e-01
## disc_grado_adulto 2.35505596 0.19535489 12.0552702 1.819348e-33
## c41_1 0.07260140 0.46062753 0.1576141 8.747609e-01
## factores_ambientales -0.22527238 0.04990106 -4.5143806 6.350208e-06
## fa11 0.10767986 0.05276715 2.0406609 4.128455e-02
## fa32 -0.45787064 0.26687155 -1.7156967 8.621756e-02
## fa40 -0.84862444 0.37994795 -2.2335282 2.551413e-02
## relacionesinterpersonales 2.11789239 0.13501499 15.6863504 1.875320e-55
## movilidad 25.34663980 1.12346734 22.5610829 1.045325e-112
## bajo|medio-bajo -2.97719270 1.34539046 -2.2128838 2.690566e-02
## medio-bajo|medio-alto 4.24083085 1.35439996 3.1311510 1.741226e-03
## medio-alto|alto 8446.40116811 1.35439996 6236.2680121 0.000000e+00
Como se observa, todas las variables escogidas tienen un p-value menor a 0.05, por lo tanto, todas son significativas es más difícil que tengas algo no significativo
Cálculo e interpretación de los exponenciales
exp(coef(modelo1))
## educacion sexo zona
## 9.812771e-01 1.556929e+00 1.024559e+00
## indigena disc_grado_adulto c41_1
## 9.725578e-01 1.053872e+01 1.075302e+00
## factores_ambientales fa11 fa32
## 7.982988e-01 1.113691e+00 6.326293e-01
## fa40 relacionesinterpersonales movilidad
## 4.280033e-01 8.313597e+00 1.018370e+11
veces ## pseudo R2”
PseudoR2(modelo1, which = c("Nagelkerke"))
## Nagelkerke
## 0.5588296
El modelo explica un 32%
Construimmos la ecuación
coef(summary(modelo1))
## Value Std. Error t value
## educacion -0.01890038 0.02500257 -0.7559375
## sexo 0.44271544 0.08022372 5.5185103
## zona 0.02426205 0.11121343 0.2181575
## indigena -0.02782578 0.13192486 -0.2109215
## disc_grado_adulto 2.35505596 0.19535489 12.0552702
## c41_1 0.07260140 0.46062753 0.1576141
## factores_ambientales -0.22527238 0.04990106 -4.5143806
## fa11 0.10767986 0.05276715 2.0406609
## fa32 -0.45787064 0.26687155 -1.7156967
## fa40 -0.84862444 0.37994795 -2.2335282
## relacionesinterpersonales 2.11789239 0.13501499 15.6863504
## movilidad 25.34663980 1.12346734 22.5610829
## bajo|medio-bajo -2.97719270 1.34539046 -2.2128838
## medio-bajo|medio-alto 4.24083085 1.35439996 3.1311510
## medio-alto|alto 8446.40116811 1.35439996 6236.2680121
primer corte
num_1 = exp(-3.2040681 - ((0.2550297* ##) + (-0.6630363* ##)+ ( 0.1200079* ##) + (-0.2312537* ##) + ()))
denom_1 = 1 + num_1 p_menorigual_muybajo= num_1/denom_1 p_menorigual_muybajo
vemos las probabilidades
head(modelo1$fitted.values)
## bajo medio-bajo medio-alto alto
## 9 5.291796e-01 0.470168447 0.0006519603 0
## 15 1.654152e-01 0.830898909 0.0036859001 0
## 21 4.424160e-01 0.556660691 0.0009232737 0
## 30 2.453054e-01 0.752443825 0.0022508046 0
## 33 1.966893e-06 0.002673293 0.9973247404 0
## 38 2.495918e-03 0.770871489 0.2266325926 0
¿Cómo se entiende esto?
Modelo de regresión lineal múltiples
summary(data$des_puntaje_adulto)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.2949 25.0458 35.0479 34.4676 43.1287 74.7678
modelo <- lm(des_puntaje_adulto~ educacion + sexo + disc_grado_adulto + factores_ambientales + fa11 + relacionesinterpersonales + movilidad,data)
summary(modelo)
##
## Call:
## lm(formula = des_puntaje_adulto ~ educacion + sexo + disc_grado_adulto +
## factores_ambientales + fa11 + relacionesinterpersonales +
## movilidad, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -31.982 -4.969 1.557 6.414 21.674
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 30.34619 1.01815 29.805 < 2e-16 ***
## educacion -0.24298 0.08933 -2.720 0.00656 **
## sexo 2.07461 0.29156 7.116 1.32e-12 ***
## disc_grado_adulto 2.64192 0.46826 5.642 1.80e-08 ***
## factores_ambientales -1.01334 0.17641 -5.744 9.95e-09 ***
## fa11 0.54511 0.18086 3.014 0.00260 **
## relacionesinterpersonales 6.25049 0.32452 19.261 < 2e-16 ***
## movilidad 77.32207 2.28079 33.901 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 8.86 on 3823 degrees of freedom
## Multiple R-squared: 0.4773, Adjusted R-squared: 0.4763
## F-statistic: 498.7 on 7 and 3823 DF, p-value: < 2.2e-16
#+ zona, + fa40
Supuestos
Normalidad
lillie.test(modelo$residuals)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: modelo$residuals
## D = 0.076455, p-value < 2.2e-16
Hipótesis
Hipótesis nula
Hipótesis alternativa
Dado que tenemos un p-value (2.2e-16) MENOR a (<) 0.05, se rechaza H0 (distribución normal) y podemos acepta H1 que (no hay distribución normal), por lo que nuestro modelo no cumpliaria con los suspuestos de normalidad
Homocedasticidad
bptest(modelo)
##
## studentized Breusch-Pagan test
##
## data: modelo
## BP = 85.085, df = 7, p-value = 1.259e-15
Hipótesis
Hipótesis nula
Hipótesis alternativa En este caso con un p-value (2.2e-16) MENOR a(<) que 0.05 se RECHAZA por lo que nuestro modelo tendria un problema de heterocedasticidad.
No-colinealidad
vif(modelo)
## educacion sexo disc_grado_adulto
## 1.053207 1.031709 1.556277
## factores_ambientales fa11 relacionesinterpersonales
## 1.354662 1.336355 1.191068
## movilidad
## 1.435837
Independencia
durbinWatsonTest (modelo)
## lag Autocorrelation D-W Statistic p-value
## 1 -0.02071664 2.040391 0.182
## Alternative hypothesis: rho != 0
Hipótesis
Hipótesis nula
Hipótesis alternativa Interpretación: Dado que la prueba de Durbin-Watson presenta un Pvale (0.302) MAYOR a(>) 0.05, no podemos rechazar la hipotesis nula, por lo que No existe auto-correlación.
Linealidad
plot(modelo,1)
autoplot(modelo)
El modelo cumple con el supuesto de linealidad