library(rio)
link='https://github.com/JoseManuelMagallanes/Estadistica_Para_AnalisisPolitico/raw/master/lapop17.dta'
lapop17=import(link)
names(lapop17)
##   [1] "pais"         "sobremuestra" "idnum"        "uniq_id"     
##   [5] "upm"          "prov"         "municipio"    "cluster"     
##   [9] "ur"           "tamano"       "idiomaq"      "fecha"       
##  [13] "wt"           "estratopri"   "estratosec"   "q2"          
##  [17] "q1"           "perprov"      "ls3"          "a4"          
##  [21] "soct2"        "idio2"        "np1"          "sgl1"        
##  [25] "cp6"          "cp7"          "cp8"          "cp13"        
##  [29] "cp20"         "it1"          "l1"           "prot3"       
##  [33] "jc10"         "jc13"         "jc15a"        "vic1ext"     
##  [37] "vic1exta"     "vic2new"      "aoj11"        "aoj12"       
##  [41] "b1"           "b2"           "b3"           "b4"          
##  [45] "b6"           "b43"          "b12"          "b13"         
##  [49] "b18"          "b21"          "b21a"         "b32"         
##  [53] "b37"          "b47a"         "m1"           "m2"          
##  [57] "sd2new2"      "sd3new2"      "sd6new2"      "infrax"      
##  [61] "infra3"       "ros1"         "ros4"         "ing4"        
##  [65] "eff1"         "eff2"         "aoj22new"     "media3"      
##  [69] "media4"       "exp_a"        "dst1b"        "drk1"        
##  [73] "env1c"        "env2b"        "envp3l"       "envp3l_o"    
##  [77] "envp3n"       "envp3n_o"     "envp41"       "envp42"      
##  [81] "pn4"          "w14a"         "e5"           "e15"         
##  [85] "e16"          "d1"           "d2"           "d3"          
##  [89] "d4"           "d5"           "d6"           "ivv3"        
##  [93] "lib1"         "lib2b"        "lib2c"        "lib4"        
##  [97] "exc2"         "exc6"         "exc20"        "exc11"       
## [101] "exc13"        "exc14"        "exc15"        "exc16"       
## [105] "exc18"        "exc7"         "exc7new"      "vb1"         
## [109] "vb2"          "vb3n"         "vb10"         "vb11"        
## [113] "pol1"         "vb20"         "dis7a"        "dis8a"       
## [117] "dis9a"        "dis10a"       "dis11a"       "for5"        
## [121] "mil10a"       "mil10e"       "ccq1"         "ccq2"        
## [125] "ccq3"         "ccq4"         "ie1"          "ie2"         
## [129] "ie3"          "ie6"          "ie9"          "ie10"        
## [133] "envp8"        "wf1"          "cct1b"        "ed"          
## [137] "ed2"          "q5a"          "q5b"          "q3c"         
## [141] "ocup4a"       "ocup1a"       "q10g"         "q10new"      
## [145] "q14"          "q10d"         "q10e"         "q11n"        
## [149] "q12c"         "q12bn"        "q12"          "q12m"        
## [153] "q12f"         "vac1"         "etid"         "iiet1"       
## [157] "iiet2"        "iiet3"        "www1"         "gi0"         
## [161] "pr1"          "r3"           "r4"           "r4a"         
## [165] "r5"           "r6"           "r7"           "r8"          
## [169] "r12"          "r14"          "r15"          "r18"         
## [173] "r1"           "r16"          "colorr"       "conocim"     
## [177] "iarea1"       "iarea2"       "iarea3"       "iarea4"      
## [181] "iarea6"       "iarea7"       "sexi"         "colori"      
## [185] "srvyrid"      "nationality"  "formatq"      "sex"
str(lapop17$sgl1)
##  num [1:2647] 2 4 4 2 5 3 5 4 5 4 ...
##  - attr(*, "label")= chr "Quality of Municipal Services"
##  - attr(*, "format.stata")= chr "%36.0f"
##  - attr(*, "labels")= Named num [1:7] 1 2 3 4 5 NA NA
##   ..- attr(*, "names")= chr [1:7] "Very Good" "Good" "Neither Good nor Bad (Fair)" "Bad" ...
library(stringr)
names(lapop17)=str_split(names(lapop17)," ",simplify = T)[,1]
lapop17[,]=lapply(lapop17[,], str_replace_all,"[^[:ascii:]]","")
library(readr)

lapop17[,c(2:7)]=lapply(lapop17[,c(2:7)],parse_number)
str(lapop17$sgl1)
##  chr [1:2647] "2" "4" "4" "2" "5" "3" "5" "4" "5" "4" "5" "4" "5" "4" ...
lapop17$sgl1=as.numeric(lapop17$sgl1)
str(lapop17$sgl1)
##  num [1:2647] 2 4 4 2 5 3 5 4 5 4 ...
library(ggplot2)
basen=ggplot(data=lapop17,aes(x=sgl1))
basen + geom_histogram(bins=10)
## Warning: Removed 71 rows containing non-finite values (stat_bin).

SGL1. ¿Diría usted que los servicios que la municipalidad está dando a la gente son: [Leer alternativas] (1) Muy buenos (2) Buenos (3) Ni buenos ni malos (regulares) (4) Malos (5) Muy malos (888888) NS (988888) NR

Pregunta: ¿Cree la mayoria de la gente que los servicios que dan los municipios son malos?

library(questionr)
library(magrittr)
OrdDf=freq(lapop17$sgl1,total = F,exclude = c(NA),cum = T) %>% data.frame()
OrdDf=data.frame(row.names(OrdDf),OrdDf,row.names = NULL)

names(OrdDf)=c("Categoria","Conteo", "Porcentaje", "Porcentaje Acumulado")

OrdDf
##   Categoria Conteo Porcentaje Porcentaje Acumulado
## 1         1     46        1.8                  1.8
## 2         2    504       19.6                 21.4
## 3         3   1100       42.7                 64.1
## 4         4    606       23.5                 87.6
## 5         5    320       12.4                100.0

como podemos ver, la maoria de la gente un 64.1% cree que los servicios brindados por el municio son entre buenos y regulares. ¿Esa creencia es relevante o no?

library(DescTools)
Mode(lapop17$sgl)
## [1] 3

no, la opinion representativa en este caso, es la de un servicio “regular”

¿Podemos afirmar que alrededor de 70% de los entrevistados cree que los derechos básicos del ciudadano estan a los mås medianamente protegidos por el sistema político peruano?

str(lapop17$b3)
##  chr [1:2647] "7" "3" "2" "3" "1" "6" "1" "2" "7" "2" "4" "6" "3" "1" ...
lapop17$b3=as.numeric(lapop17$b3)
str(lapop17$b3)
##  num [1:2647] 7 3 2 3 1 6 1 2 7 2 ...
basen=ggplot(data=lapop17,aes(x=b3))
basen + geom_histogram(bins=10)
## Warning: Removed 41 rows containing non-finite values (stat_bin).

Si usted cree que los tribunales no garantizan para nada la justicia, escoja el número 1; si cree que los tribunales garantizan mucho la justicia, escoja el número 7 o escoja un puntaje intermedio]

library(questionr)
library(magrittr)
OrdDf=freq(lapop17$b3,total = F,exclude = c(NA),cum = T) %>% data.frame()
OrdDf=data.frame(row.names(OrdDf),OrdDf,row.names = NULL)

names(OrdDf)=c("Categoria","Conteo", "Porcentaje", "Porcentaje Acumulado")

OrdDf
##   Categoria Conteo Porcentaje Porcentaje Acumulado
## 1         1    358       13.7                 13.7
## 2         2    449       17.2                 31.0
## 3         3    557       21.4                 52.3
## 4         4    557       21.4                 73.7
## 5         5    379       14.5                 88.3
## 6         6    181        6.9                 95.2
## 7         7    125        4.8                100.0

como podemos ver en el grafico el 70% de los ciudadanos (el 1 al 4), le da valores muy negativos o medianamente negativos a la proteccion de derechos del ciudadano

Parte 2.

Para esta parte descargue la información de cada país sobre el índice de felicidad

library(htmltab)

# coleccion
links=list(web="https://es.wikipedia.org/wiki/%C3%8Dndice_global_de_felicidad",
           xpath ='//*[@id="mw-content-text"]/div/table')
feliz<- htmltab(doc = links$web, which =links$xpath)
str(feliz)
## 'data.frame':    156 obs. of  9 variables:
##  $ №                                     : chr  "1" "2" "3" "4" ...
##  $ País                                  : chr  "Finlandia" "Noruega" "Dinamarca" "Islandia" ...
##  $ Puntuación                            : chr  "7.633" "7.594" "7.555" "7.495" ...
##  $ PIB per cápita                        : chr  "1.305" "1.456" "1.351" "1.343" ...
##  $ Apoyo social                          : chr  "1.592" "1.582" "1.590" "1.644" ...
##  $ Esperanza de años de vida saludable   : chr  "0.874" "0.861" "0.868" "0.914" ...
##  $ Libertad para tomar decisiones vitales: chr  "0.681" "0.686" "0.683" "0.677" ...
##  $ Generosidad                           : chr  "0.192" "0.286" "0.284" "0.353" ...
##  $ Percepción de la corrupción           : chr  "0.393" "0.340" "0.408" "0.138" ...
names(feliz)
## [1] "№"                                     
## [2] "País"                                  
## [3] "Puntuación"                            
## [4] "PIB per cápita"                        
## [5] "Apoyo social"                          
## [6] "Esperanza de años de vida saludable"   
## [7] "Libertad para tomar decisiones vitales"
## [8] "Generosidad"                           
## [9] "Percepción de la corrupción"
names(feliz)=str_replace_all(names(feliz), "[^[:ascii:]]", "")
feliz[,]=lapply(feliz[,], str_replace_all,"[^[:ascii:]]","")
library(stringr)
names(feliz)=str_split(names(feliz)," ",simplify = T)[,1]
names(feliz)
## [1] ""            "Pas"         "Puntuacin"   "PIB"         "Apoyo"      
## [6] "Esperanza"   "Libertad"    "Generosidad" "Percepcin"
feliz$Puntuacin=as.numeric(feliz$Puntuacin)
base2=ggplot(feliz,aes(y=Puntuacin))
box=base2 + geom_boxplot() + coord_flip()

box 

library(DescTools)
Skew(feliz$Puntuacin,conf.level = 0.05)
##       skew     lwr.ci     upr.ci 
## 0.01494113 0.01514414 0.03328302

La puntuación de la felicidad se distribuye asimetricamente? el indice de felicidad se distribute asimetricamente, con una asimetria positiva

¿El valor representativo de indice de felicidad es robusto?

summary(feliz$Puntuacin)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   2.905   4.454   5.378   5.376   6.168   7.633
basen=ggplot(data=feliz,aes(x=Puntuacin))
basen + geom_histogram(bins=10)

Skew(feliz$Puntuacin,conf.level = 0.05)
##        skew      lwr.ci      upr.ci 
## 0.014941126 0.006727889 0.020142209

si es robusto

¿Puedes concluir que hay mucha desigualdad en este indice?

Gini(feliz$Puntuacin,conf.level=0.95)
##      gini    lwr.ci    upr.ci 
## 0.1196207 0.1097854 0.1329390

no hay mucha desigualdad en este indice

¿Se puede afirmar que aproximadamente el 80% de los paises del mundo suman el 75% del puntaje acumulado de felicidad?

library(ggplot2)
library(gglorenz)
## Registered S3 methods overwritten by 'ineq':
##   method   from     
##   plot.Lc  DescTools
##   lines.Lc DescTools
ggplot(feliz,aes(x=Puntuacin))+ gglorenz::stat_lorenz(color='purple') +
    geom_abline(linetype = "dashed") + coord_fixed() +
    labs(x = "% Paises ordenados por Indice de felicidad",
         y = "% Acumulado de Puntuación de IF",
         title = "Relación pais/Indice de FELICIDAD",
         caption = "Fuente: THE NEW YORK TIMES") + 
     scale_y_continuous(breaks=seq(0,1,0.15)) +
     scale_x_continuous(breaks=seq(0,1,0.2))

si, segun el grafico de lorenz si ¿Hay atipicos en el puntaje de felicidad?

q3=as.numeric(summary(feliz$Puntuacin)[5])

# calculando umbral (distancia del q3)
umbral= q3+1.5*IQR(feliz$Puntuacin)
umbral
## [1] 8.740625
feliz[feliz$Puntuacin>umbral,]
## [1]             Pas         Puntuacin   PIB         Apoyo       Esperanza  
## [7] Libertad    Generosidad Percepcin  
## <0 rows> (or 0-length row.names)

no hay ningun atipico