Practicando Regresion
link="https://docs.google.com/spreadsheets/d/e/2PACX-1vQWqlGkWq-F114LaAdWBSgnFUA98hGKUjo38se58sl28z-MZu_ZS3bMbYDtHLCppw/pub?output=csv"
apoyo=read.csv(link,stringsAsFactors = F)
Variables:
V Dep : apoyo poblacional en ppk y fp V Indep : esperanza accesoedu percapitaf
Responder lo siguiente:
Variable dep : difvotos Variable Indep : provincia
Para saber si gano en todas las proviencia debo restar lo de FP con lo de PPK
apoyo$difvotos=apoyo$PPK-apoyo$FP
head(aggregate(difvotos~prov,data = apoyo,sum),20)
## prov difvotos
## 1 ABANCAY 137
## 2 ACOBAMBA 577
## 3 ACOMAYO 4646
## 4 AIJA -397
## 5 ALTO AMAZONAS 13871
## 6 AMBO -2903
## 7 ANDAHUAYLAS -513
## 8 ANGARAES 2866
## 9 ANTA 9633
## 10 ANTABAMBA 135
## 11 ANTONIO RAYMONDI 1681
## 12 AREQUIPA 274149
## 13 ASCOPE -18314
## 14 ASUNCION 330
## 15 ATALAYA -7635
## 16 AYABACA 1627
## 17 AYMARAES -1337
## 18 AZANGARO 29420
## 19 BAGUA 2064
## 20 BARRANCA -20134
Con esto me arrogan la diferencia de votos, ahora de manera mas practica pid un summary ( de haber negativos ) sabre que no gano en todas las provincias
dataProv=aggregate(difvotos~prov,data = apoyo,sum)
summary(dataProv$difvotos)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -79776.0 -6174.5 -364.0 309.7 3609.5 274149.0
Por los resultados se dice que no gano en todas las provincias ( aparecen en negativo)
Ahora para identificar en que provincias no gano
dataProv[dataProv$difvotos>0,'prov']
## [1] "ABANCAY" "ACOBAMBA"
## [3] "ACOMAYO" "ALTO AMAZONAS"
## [5] "ANGARAES" "ANTA"
## [7] "ANTABAMBA" "ANTONIO RAYMONDI"
## [9] "AREQUIPA" "ASUNCION"
## [11] "AYABACA" "AZANGARO"
## [13] "BAGUA" "CALCA"
## [15] "CALLAO" "CAMANA"
## [17] "CANAS" "CANCHIS"
## [19] "CANDARAVE" "CANGALLO"
## [21] "CARABAYA" "CARLOS FERMIN FITZCARRALD"
## [23] "CASTILLA" "CAYLLOMA"
## [25] "CELENDIN" "CHACHAPOYAS"
## [27] "CHINCHA" "CHINCHEROS"
## [29] "CHOTA" "CHUCUITO"
## [31] "CHUMBIVILCAS" "CHUPACA"
## [33] "CONDESUYOS" "CONDORCANQUI"
## [35] "COTABAMBAS" "CUSCO"
## [37] "CUTERVO" "DANIEL A. CARRION"
## [39] "DATEM DEL MARANON" "DOS DE MAYO"
## [41] "EL COLLAO" "ESPINAR"
## [43] "GENERAL SANCHEZ CERRO" "GRAU"
## [45] "HUACAYBAMBA" "HUALGAYOC"
## [47] "HUAMALIES" "HUAMANGA"
## [49] "HUANCA SANCOS" "HUANCANE"
## [51] "HUANCAVELICA" "HUANCAYO"
## [53] "HUARAZ" "HUARI"
## [55] "ILO" "ISLAY"
## [57] "JAEN" "JORGE BASADRE"
## [59] "JUNIN" "LA UNION"
## [61] "LAMPA" "LAURICOCHA"
## [63] "LIMA" "MARANON"
## [65] "MARISCAL LUZURIAGA" "MARISCAL NIETO"
## [67] "MAYNAS" "MELGAR"
## [69] "MOHO" "PALLASCA"
## [71] "PARURO" "PASCO"
## [73] "PAUCARTAMBO" "POMABAMBA"
## [75] "PUNO" "QUISPICANCHI"
## [77] "RECUAY" "RODRIGUEZ DE MENDOZA"
## [79] "SAN IGNACIO" "SAN MARTIN"
## [81] "SAN PABLO" "SAN ROMAN"
## [83] "SANTA" "SIHUAS"
## [85] "TACNA" "TALARA"
## [87] "TARATA" "TAYACAJA"
## [89] "URUBAMBA" "VICTOR FAJARDO"
## [91] "YAROWILCA" "YAULI"
## [93] "YUNGUYO"
Ahora para saber cuanto suman las provincias o sea en cuantas provuincias no gano
length(dataProv[dataProv$difvotos>=0,'prov'])
## [1] 93
En 93 provincias no gano FP :. No gano FP en todas las provincias
apoyo$difvotos=apoyo$PPK-apoyo$FP
head(aggregate(difvotos~prov,data = apoyo,sum),20)
## prov difvotos
## 1 ABANCAY 137
## 2 ACOBAMBA 577
## 3 ACOMAYO 4646
## 4 AIJA -397
## 5 ALTO AMAZONAS 13871
## 6 AMBO -2903
## 7 ANDAHUAYLAS -513
## 8 ANGARAES 2866
## 9 ANTA 9633
## 10 ANTABAMBA 135
## 11 ANTONIO RAYMONDI 1681
## 12 AREQUIPA 274149
## 13 ASCOPE -18314
## 14 ASUNCION 330
## 15 ATALAYA -7635
## 16 AYABACA 1627
## 17 AYMARAES -1337
## 18 AZANGARO 29420
## 19 BAGUA 2064
## 20 BARRANCA -20134
dataDepa=aggregate(difvotos~depa,data = apoyo,sum)
summary(dataDepa$difvotos)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -217134 -27094 -6609 2415 23266 294889
length(dataDepa[dataDepa$difvotos>=0,'depa'])
## [1] 12
En doce no gano
:. FP no gano en todos los departamentos
Variabbles Dif votos Nivel de ingreso
Correlacion se usa tanto tecnicas Paramtricas como No parametricas por lo que debo ver si difvotos es normal o no ? Uso shapiro para ver si es normal
shapiro.test(apoyo$difvotos)
##
## Shapiro-Wilk normality test
##
## data: apoyo$difvotos
## W = 0.46253, p-value < 2.2e-16
P-value = 2.2 e-16 asi que es menos que 0.05 por lo tanto NO ES NORMAL Entonces debemos usar Metodos No Parametricos por lo que ahora para saber la correlacion entre las variables usamos Spearman
OJO : Spearman => si es mayor a 0.05 entocnes NO HAY CORRELACION
cor.test(apoyo$difvotos,apoyo$percapitaf,method = "spearman")
## Warning in cor.test.default(apoyo$difvotos, apoyo$percapitaf, method =
## "spearman"): Cannot compute exact p-value with ties
##
## Spearman's rank correlation rho
##
## data: apoyo$difvotos and apoyo$percapitaf
## S = 1112796710, p-value = 0.0004149
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
## rho
## -0.08235373
Enotonces como el p-value es 0.00041 y esto No es mayor que 0.05 se dice que SI HAY CORRELACION
Ahora para verlo graficamente hacemos lo sgt:
library(ggpubr)
## Loading required package: ggplot2
## Loading required package: magrittr
p2=ggscatter(data = apoyo,x="difvotos",y="percapitaf",cor.coef = TRUE,cor.method = "spearman")
p2
Recordar que tenemos las sgt hipotesis:
PPK tuvo más apoyo que FP mientras mejor acceso a la educación.
PPK tuvo más apoyo que FP mientras mayor era a la esperanza de vida.
PPK tuvo menos apoyo que FP mientras mayores ingresos.
V DEP : dif votos Vs INDEP: educacion, esperanza, ingresos, pobla
allhipoycontrol=lm(difvotos~accesoedu+esperanza+percapitaf+pobla,data = apoyo)
summary(allhipoycontrol)
##
## Call:
## lm(formula = difvotos ~ accesoedu + esperanza + percapitaf +
## pobla, data = apoyo)
##
## Residuals:
## Min 1Q Median 3Q Max
## -36426 -1276 75 1143 74927
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.553e+03 1.739e+03 2.044 0.04111 *
## accesoedu 2.640e+02 9.807e+01 2.692 0.00716 **
## esperanza -9.462e+01 2.413e+01 -3.921 9.13e-05 ***
## percapitaf 5.003e+00 7.962e-01 6.283 4.13e-10 ***
## pobla -2.494e-02 2.596e-03 -9.607 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 5182 on 1829 degrees of freedom
## Multiple R-squared: 0.09786, Adjusted R-squared: 0.09589
## F-statistic: 49.6 on 4 and 1829 DF, p-value: < 2.2e-16
Ahora revisando las hipotesis:
H1 : PPK tuvo mas apoyo que FP mientras mejor acceso a la educacion
**Hipotesis confirmada**
De lo extraido en la variable control se obtiene lo sgt:
La relacion es directa ya que el valor que muestra es positivo
Tiene un coeficiente de 2640
Es significativo al 0.01 pues tiene 2 (*)
H2 : PPK tuvo mas apoyo que Fp mientras mayor era la esperanza de vida
**Hipotesis No confirmada**
De lo extraido en la variable control se obtine lo sgt:
La relacion es indirecta ya que es negativo
tiene un coeficiente de -94.62
es significativo al 0.001
H3 : PPK tuvo menos apoyo que FP mientras mayores ingresos
**Hipotesis NO confirmada**
De lo extraido en la varriable control tenemos lo sgt
La rrelacion es directa
su coeficiente es de 5.003
significativo al 0.001
Sera cierto que el promedio de ingresos es mas alto donde gano PPK y perdio Keiko?
Prmero hacemos una columna donde 1 = gana y 0 = no gana
apoyo$ganaPPK=as.numeric(apoyo$difvotos>0)
Ahora se calcula el promedio
aggregate(percapitaf~ganaPPK,data = apoyo,mean)
## ganaPPK percapitaf
## 1 0 386.2901
## 2 1 399.6531
El promedio parecer ser mayor, pero veamos errores
hacemos un grafico
library(ggpubr)
ggerrorplot(data = apoyo,x="ganaPPK",y="percapitaf",desc_stat = "mean_ci")
Con el grafico se ve como los errores se intersectan, ahora hafo un prueba de contrastes:
. Primero, verifico si la variable numerica (ingresos) es normal
shapiro.test(apoyo$percapitaf)
##
## Shapiro-Wilk normality test
##
## data: apoyo$percapitaf
## W = 0.85858, p-value < 2.2e-16
Es NO NORMAL so usamos no parametricas
. Por lo que corresponde la U de Mann Whitney-
Es una prueba **No parametrica**
Identifica diferencias entre 2 poblaciones basadas en el analisis de 2 muestras indep (medias)
kruskal.test(percapitaf~ganaPPK,data = apoyo)
##
## Kruskal-Wallis rank sum test
##
## data: percapitaf by ganaPPK
## Kruskal-Wallis chi-squared = 4.7159, df = 1, p-value = 0.02989
p-valor es : 0.02989 asi que se rechaza que las medias sean iguales Lo que contradice al grafico anterior mejor lo vemos en un Box plot
ggplot(data = apoyo,aes(x=as.factor(ganaPPK),y=percapitaf))+geom_boxplot(notch = T)
La presencia de Atipicos son lo que confunden a la U de Mann Whitney De hecho la Mediana de KEIKO es mas alta por Ambos graficos decimos que la diferencia de promedios no es significativa