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