link="https://docs.google.com/spreadsheets/d/e/2PACX-1vR0wA5f_K6yBbQTs9ahhxs9o8SuYqtHgiWgZZR1HatPqvFf-M5621WuEI0KKeth4aSBFEgibpb-H8fP/pub?gid=2057947663&single=true&output=csv"
data=read.csv(link, stringsAsFactors = F)
str(data)
## 'data.frame': 1096 obs. of 8 variables:
## $ poblacioncienmil: num 20.92 0.24 0.04 0.06 0.27 ...
## $ nbi : num 12.2 33.8 28.5 33.1 27.1 ...
## $ consejocomunal : int 0 0 0 0 0 0 0 0 0 0 ...
## $ priorizado : int 0 1 0 0 0 0 0 0 1 0 ...
## $ uribista : int 0 1 1 1 1 1 1 1 1 NA ...
## $ ejecucion : int 0 0 0 0 0 0 0 0 0 0 ...
## $ apropiaciondolar: num 102.17 4.19 1.59 0 0 ...
## $ pctopo : num 14.82 14.51 15.08 6.15 47.31 ...
#Pasando las variables a factores
data[,c(3,4:6)]=lapply(data[,c(3,4:6)],as.factor)
str(data)
## 'data.frame': 1096 obs. of 8 variables:
## $ poblacioncienmil: num 20.92 0.24 0.04 0.06 0.27 ...
## $ nbi : num 12.2 33.8 28.5 33.1 27.1 ...
## $ consejocomunal : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
## $ priorizado : Factor w/ 2 levels "0","1": 1 2 1 1 1 1 1 1 2 1 ...
## $ uribista : Factor w/ 2 levels "0","1": 1 2 2 2 2 2 2 2 2 NA ...
## $ ejecucion : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
## $ apropiaciondolar: num 102.17 4.19 1.59 0 0 ...
## $ pctopo : num 14.82 14.51 15.08 6.15 47.31 ...
#Resumen descriptivo de la data
summary(data)
## poblacioncienmil nbi consejocomunal priorizado uribista
## Min. : 0.0000 Min. : 5.36 0:1036 0:820 0 :332
## 1st Qu.: 0.0700 1st Qu.:28.35 1: 60 1:276 1 :560
## Median : 0.1400 Median :41.30 NA's:204
## Mean : 0.4047 Mean :42.96
## 3rd Qu.: 0.2600 3rd Qu.:55.48
## Max. :69.2700 Max. :98.81
## NA's :30
## ejecucion apropiaciondolar pctopo
## 0:1055 Min. : 0.000 Min. : 0.00
## 1: 41 1st Qu.: 0.000 1st Qu.: 5.92
## Median : 0.000 Median :20.31
## Mean : 8.276 Mean :27.87
## 3rd Qu.: 9.390 3rd Qu.:45.71
## Max. :132.640 Max. :99.42
## NA's :7
#EXPLORACIÓN UNIVARIADA , VARIABLES CATEGÓRICAS #Criterio técnico #Municipios priorizados Variable dicotómica que identifica si el municipio ha sido considerado como prioridad técnica en el Plan Nacional de Desarrollo
#Se reemplaza el 0 y el con el si y no
data$priorizado = factor(data$priorizado, labels=c("No", "Si"))
str(data$priorizado)
## Factor w/ 2 levels "No","Si": 1 2 1 1 1 1 1 1 2 1 ...
table(data$priorizado)
##
## No Si
## 820 276
#820 municipios no han sido priorizados
prop.table(table(data$priorizado))*100
##
## No Si
## 74.81752 25.18248
#El 75% de los municipios no han sido priorizados
#Frecuencia de nuestra variable
barplot(table(data$priorizado),las=2, main="Priorización técnica" , col = "red")
pie(table(data$priorizado),las=2, main="Priorización técnica")
#MECANISMOS CLIENTELISTAS #Municipios con alcades uribistas Creación de una variable dicotómica que identidica si en la alcaldía ganó un candidato de partidos simpatizantes con el uribismo
data$uribista = factor(data$uribista, labels=c("No", "Si"))
str(data$uribista)
## Factor w/ 2 levels "No","Si": 1 2 2 2 2 2 2 2 2 NA ...
levels(data$uribista)[levels(data$uribista)==''] = NA
table(data$uribista)
##
## No Si
## 332 560
#En 560 municipios ganó la alcaldía un candidato uribista que equivale al 62%
prop.table(table(data$uribista))*100
##
## No Si
## 37.21973 62.78027
barplot(table(data$uribista),las=2, main="Uribista o no" , col = "blue")
pie(table(data$uribista),las=2, main="Uribista o no")
Esfuerzos populistas #CONSEJOS COMUNALES Variable dicotómica que explica si en el municipio se han desarrollado consejos comunales
data$consejocomunal = factor(data$consejocomunal, labels=c("No", "Si"))
str(data$consejocomunal)
## Factor w/ 2 levels "No","Si": 1 1 1 1 1 1 1 1 1 1 ...
table(data$consejocomunal)
##
## No Si
## 1036 60
prop.table(table(data$consejocomunal))*100
##
## No Si
## 94.525547 5.474453
En 60 municipios se han realizado consejos comunales , esto equivale al 5 %
#Consejo Comunal con ejecución Variable dicotómica que identifica a los municipios donde se ejecutaron recursos como resultado de las promesas hechas en los Consejos comunales
data$ejecucion= factor(data$ejecucion, labels=c("No", "Si"))
str(data$ejecucion)
## Factor w/ 2 levels "No","Si": 1 1 1 1 1 1 1 1 1 1 ...
table(data$ejecucion)
##
## No Si
## 1055 41
prop.table(table(data$ejecucion))*100
##
## No Si
## 96.259124 3.740876
En 41 municipios se ejecutó presupuesto como resultado de promesas hechas en los Consejos Comunales = 3.7%
#VARIABLES NUMÉRICAS #Variable dependiente:presupuesto total La variable que se busca explicar es la apropiación presupueestal total (en millones de dólares) que se le asignó a cada municipio durante el periodo de estudio
str(data$apropiaciondolar)
## num [1:1096] 102.17 4.19 1.59 0 0 ...
summary(data$apropiaciondolar)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.000 0.000 0.000 8.276 9.390 132.640
#La media(promedio) fue de 8,926 millones de dólares
#El máximo 132 millones dólares
#El mínimo 0
nrow(data[data$apropiaciondolar== 0,])
## [1] 600
#Son 600 municipios que no recibieron nada
boxplot(data$apropiaciondolar,main="Distr. de Apropiacion Dolar")
hist(data$apropiaciondolar,main="Histograma de Apropiacion Dolar")
#MECANISMOS CLIENTELISTAS #Votos opisición Variable numérica con el porcentaje de votos que obtvieron los candidatos a la Cámara de Representantes que pertenecían a partidos de la oposición
str(data$pctopo)
## num [1:1096] 14.82 14.51 15.08 6.15 47.31 ...
summary(data$pctopo)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.00 5.92 20.31 27.87 45.71 99.42 7
#promedio de 27.8 %
#Necesidades básica y población en mil
Dos variables para controlar su edecto en la apropiación presupuestal #Población
#Número de habitantes por cada cien mil
str(data$poblacioncienmil)
## num [1:1096] 20.92 0.24 0.04 0.06 0.27 ...
summary(data$poblacioncienmil)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.0000 0.0700 0.1400 0.4047 0.2600 69.2700
#NBI
#Nivel de pobreza de cada municipio
str(data$nbi)
## num [1:1096] 12.2 33.8 28.5 33.1 27.1 ...
summary(data$nbi)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 5.36 28.35 41.30 42.96 55.48 98.81 30
#REGRESIÓN LINEAL
#relación entre apropiación presupuestal y nbi
plot(apropiaciondolar ~ nbi, data=data)
abline(lm(data$apropiaciondolar ~ data$nbi), col="red")
#REGRESIÓN
modelo = lm(apropiaciondolar ~ nbi, data=data)
summary(modelo)
##
## Call:
## lm(formula = apropiaciondolar ~ nbi, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -14.425 -9.325 -5.942 1.936 118.820
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 15.27848 1.22244 12.498 < 2e-16 ***
## nbi -0.15923 0.02609 -6.103 1.46e-09 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 15.92 on 1064 degrees of freedom
## (30 observations deleted due to missingness)
## Multiple R-squared: 0.03382, Adjusted R-squared: 0.03291
## F-statistic: 37.24 on 1 and 1064 DF, p-value: 1.458e-09
#REGRESIÓN FINAL
modelo_pavimentando = lm(apropiaciondolar ~ priorizado + pctopo + uribista + consejocomunal + ejecucion + poblacioncienmil + nbi, data=data)
summary(modelo_pavimentando)
##
## Call:
## lm(formula = apropiaciondolar ~ priorizado + pctopo + uribista +
## consejocomunal + ejecucion + poblacioncienmil + nbi, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -60.200 -8.208 -5.877 2.512 92.495
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 14.13107 1.67647 8.429 < 2e-16 ***
## priorizadoSi -2.21440 1.18713 -1.865 0.06247 .
## pctopo -0.03096 0.02126 -1.456 0.14562
## uribistaSi -2.57304 1.09185 -2.357 0.01867 *
## consejocomunalSi 14.05085 2.32445 6.045 2.22e-09 ***
## ejecucionSi 2.95645 2.80751 1.053 0.29261
## poblacioncienmil 1.83856 0.20023 9.182 < 2e-16 ***
## nbi -0.09290 0.02941 -3.159 0.00164 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 15.38 on 868 degrees of freedom
## (220 observations deleted due to missingness)
## Multiple R-squared: 0.1751, Adjusted R-squared: 0.1684
## F-statistic: 26.32 on 7 and 868 DF, p-value: < 2.2e-16
#CUADRADO DESCRIPTIVO FINAL
install.packages("devtools")
## Installing package into '/home/rstudio-user/R/x86_64-pc-linux-gnu-library/4.0'
## (as 'lib' is unspecified)
library("devtools")
## Loading required package: usethis
install_github("hofnerb/papeR")
## Skipping install of 'papeR' from a github remote, the SHA1 (ec5fd870) has not changed since last install.
## Use `force = TRUE` to force installation
library("papeR")
## Loading required package: car
## Loading required package: carData
## Loading required package: xtable
## Registered S3 method overwritten by 'papeR':
## method from
## Anova.lme car
##
## Attaching package: 'papeR'
## The following object is masked from 'package:utils':
##
## toLatex
summarize_factor(data)
## Non-factors are dropped from the summary
## Level N %
## 1 consejocomunal No 1036 94.5
## 2 Si 60 5.5
## 3 priorizado No 820 74.8
## 4 Si 276 25.2
## 5 uribista No 332 30.3
## 6 Si 560 51.1
## 7 <Missing> 204 18.6
## 8 ejecucion No 1055 96.3
## 9 Si 41 3.7
#Se explica el número de objetos de cada variable dicotómica y el %=1
summarize_numeric(data)
## Factors are dropped from the summary
## N Missing Mean SD Min Q1 Median Q3 Max
## 1 poblacioncienmil 1096 0 0.40 2.39 0.00 0.07 0.14 0.26 69.27
## 2 nbi 1066 30 42.96 18.70 5.36 28.34 41.30 55.49 98.81
## 3 apropiaciondolar 1096 0 8.28 16.04 0.00 0.00 0.00 9.40 132.64
## 4 pctopo 1089 7 27.87 25.59 0.00 5.92 20.31 45.71 99.42
#Cuadro descriptivo de las variables cuantitativas que brinda lo siguiente:
#Número de objetos
#Promedio (media)
#Desviación estándar
#Mínimo y máximo