Limpieza de datas (del 2008-2012 para las variables independientes y del 2013 al 2017 para la variable dependiente) ### Variable dependiente (2013-2017)
# Prevalencia del VIH en mujeres
link1="https://docs.google.com/spreadsheets/d/e/2PACX-1vQ51CAVKCjF_48ylMXr4FJkuVOHpXlUhaGmIA44cdQeWt4cBNjfekSgrPMjZMXrZg/pub?gid=14954305&single=true&output=csv"
DataVIH=read.csv(link1, stringsAsFactors = F)
DataVIH = DataVIH[,c(1,53:57)]
names(DataVIH) = c("Pais","2008","2009","2010","2011","2012")
DataVIH$`2009` = gsub("\\,", ".", DataVIH$`2009`)
DataVIH$`2010` = gsub("\\,", ".", DataVIH$`2010`)
DataVIH$`2008` = gsub("\\,", ".", DataVIH$`2008`)
DataVIH$`2011` = gsub("\\,", ".", DataVIH$`2011`)
DataVIH$`2012` = gsub("\\,", ".", DataVIH$`2012`)
DataVIH[,c(2:6)]=lapply(DataVIH[,c(2:6)],as.numeric) #volver numerico en grupo
DataVIH = DataVIH[complete.cases(DataVIH),]
row.names(DataVIH) = NULL
DataVIH$VIH = rowMeans(DataVIH[,2:6])
DataVIH = DataVIH[,c (1,7)]
link2="https://docs.google.com/spreadsheets/d/e/2PACX-1vQ-T56gOlA6lVVHHnrqUR6bc_doAmUewuvSlG4CcNgYyeZVUbPiozpcciPpDS3SyQ/pub?gid=1993384276&single=true&output=csv"
DataAct=read.csv(link2,stringsAsFactors = F)
DataAct = DataAct[,c(1,48:52)]
names(DataAct) = c("Pais","2003","2004","2005", "2006", "2007")
DataAct$`2003` = gsub("\\,", ".", DataAct$`2003`)
DataAct$`2004` = gsub("\\,", ".", DataAct$`2004`)
DataAct$`2005` = gsub("\\,", ".", DataAct$`2005`)
DataAct$`2006` = gsub("\\,", ".", DataAct$`2006`)
DataAct$`2007` = gsub("\\,", ".", DataAct$`2007`)
DataAct[,c(2:6)]=lapply(DataAct[,c(2:6)],as.numeric) #volver numerico en grupo
DataAct = DataAct[complete.cases(DataAct),]
row.names(DataAct) = NULL
DataAct$PoblacionActiva = rowMeans(DataAct[,2:6])
DataAct= DataAct[,c (1,7)]
link3="https://docs.google.com/spreadsheets/d/e/2PACX-1vTDcvi_z6RrnoATATdOGBLj2WlKRmVxqvx2hc4lUqkMwCcF3j9BLklmz0VjjIX4vA/pub?gid=1181245938&single=true&output=csv"
DataFLM= read.csv(link3, stringsAsFactors = F)
DataFLM = DataFLM[,c(1,48:52)]
names(DataFLM) = c("Pais","2003","2004","2005", "2006", "2007")
DataFLM$`2003` = gsub("\\,", ".", DataFLM$`2003`)
DataFLM$`2004` = gsub("\\,", ".", DataFLM$`2004`)
DataFLM$`2005` = gsub("\\,", ".", DataFLM$`2005`)
DataFLM$`2006` = gsub("\\,", ".", DataFLM$`2006`)
DataFLM$`2007` = gsub("\\,", ".", DataFLM$`2007`)
DataFLM[,c(2:6)]=lapply(DataFLM[,c(2:6)],as.numeric)
DataFLM$FLM = rowMeans(DataFLM[,2:6],na.rm = TRUE)
DataFLM= DataFLM[,c (1,7)]
DataFLM = DataFLM[complete.cases(DataFLM),]
row.names(DataFLM) = NULL
link4="https://docs.google.com/spreadsheets/d/e/2PACX-1vRI-hkw-v7fdeFY_c1aS0c_DD86WJ-0k_G9Ti2lE_0_P3nGcPHagckLPhVM9SzD5g/pub?gid=932337199&single=true&output=csv"
DataMetodos= read.csv(link4, stringsAsFactors = F)
DataMetodos = DataMetodos[,c(1,48:52)]
names(DataMetodos) = c("Pais","2003","2004","2005", "2006", "2007")
DataMetodos$`2003` = gsub("\\,", ".", DataMetodos$`2003`)
DataMetodos$`2004` = gsub("\\,", ".", DataMetodos$`2004`)
DataMetodos$`2005` = gsub("\\,", ".", DataMetodos$`2005`)
DataMetodos$`2006` = gsub("\\,", ".", DataMetodos$`2006`)
DataMetodos$`2007` = gsub("\\,", ".", DataMetodos$`2007`)
DataMetodos[,c(2:6)]=lapply(DataMetodos[,c(2:6)],as.numeric)
DataMetodos$Metodos = rowMeans(DataMetodos[,2:6],na.rm = TRUE)
DataMetodos= DataMetodos[,c (1,7)]
DataMetodos = DataMetodos[complete.cases(DataMetodos),]
row.names(DataMetodos) = NULL
link5="https://docs.google.com/spreadsheets/d/e/2PACX-1vQnghOacrnZH200jpcJc-Vym7n8rrfuQlupJ470spsBTvZ0WUWvl63x2AYL1W92sw/pub?gid=1538383881&single=true&output=csv"
DataTugurios= read.csv(link5, stringsAsFactors = F)
DataTugurios = DataTugurios[,c(1,48:52)]
names(DataTugurios) = c("Pais","2003","2004","2005", "2006", "2007")
DataTugurios$`2003` = gsub("\\,", ".", DataTugurios$`2003`)
DataTugurios$`2004` = gsub("\\,", ".", DataTugurios$`2004`)
DataTugurios$`2005` = gsub("\\,", ".", DataTugurios$`2005`)
DataTugurios$`2006` = gsub("\\,", ".", DataTugurios$`2006`)
DataTugurios$`2007` = gsub("\\,", ".", DataTugurios$`2007`)
DataTugurios[,c(2:6)]=lapply(DataTugurios[,c(2:6)],as.numeric)
DataTugurios$BarriosTugurios = rowMeans(DataTugurios[,2:6],na.rm = TRUE)
DataTugurios= DataTugurios[,c (1,7)]
DataTugurios = DataTugurios[complete.cases(DataTugurios),]
row.names(DataTugurios) = NULL
link6="https://docs.google.com/spreadsheets/d/e/2PACX-1vSOdz-vUkw9_yctGztLL_PS87cCS7GoU10PiLA3ywnO8-iNXG1OBi_8OBOpZ0r3AQ/pub?gid=826191890&single=true&output=csv"
DataGini= read.csv(link6, stringsAsFactors = F)
DataGini = DataGini[,c(1,48:52)]
names(DataGini) = c("Pais","2003","2004","2005", "2006", "2007")
DataGini$`2003` = gsub("\\,", ".", DataGini$`2003`)
DataGini$`2004` = gsub("\\,", ".", DataGini$`2004`)
DataGini$`2005` = gsub("\\,", ".", DataGini$`2005`)
DataGini$`2006` = gsub("\\,", ".", DataGini$`2006`)
DataGini$`2007` = gsub("\\,", ".", DataGini$`2007`)
DataGini[,c(2:6)]=lapply(DataGini[,c(2:6)],as.numeric)
DataGini$Gini = rowMeans(DataGini[,2:6],na.rm = TRUE)
DataGini= DataGini[,c (1,7)]
DataGini= DataGini[complete.cases(DataGini),]
row.names(DataGini) = NULL
link7="https://docs.google.com/spreadsheets/d/e/2PACX-1vTTojodRJwkAu-98fKnnuzUCJZE-Wj4tDFm7F2XQLDeT3CSifu-yWiHZuZv-uzL2Q/pub?gid=1142139153&single=true&output=csv"
EDU=read.csv(link7,stringsAsFactors = F)
EDU=EDU[,c(1,48:52)]
names(EDU)=c("Pais","2003","2004","2005","2006","2007")
EDU$`2003`= gsub("\\,", ".",EDU$`2003`)
EDU$`2004`= gsub("\\,", ".",EDU$`2004`)
EDU$`2005`= gsub("\\,", ".",EDU$`2005`)
EDU$`2006`= gsub("\\,", ".",EDU$`2006`)
EDU$`2007`= gsub("\\,", ".",EDU$`2007`)
EDU[c(2:6)] = lapply(EDU[c(2:6)], as.numeric)
EDU$EDU = rowMeans(EDU[,2:6],na.rm = TRUE)
EDU= EDU[,c (1,7)]
EDU= EDU[complete.cases(EDU),]
row.names(EDU) = NULL
link8="https://docs.google.com/spreadsheets/d/e/2PACX-1vQrlQtEYBGaf0IhPz_H9oaM8uD1UaVoR1J_xP6bYe8ZqNAVSRJiLh4DXq52KomGsQ/pub?gid=2059415238&single=true&output=csv"
ENER=read.csv(link8,stringsAsFactors = F)
ENER=ENER[,c(1,48:52)]
names(ENER)=c("Pais","2003","2004","2005","2006","2007")
ENER$`2003`= gsub("\\,", ".",ENER$`2003`)
ENER$`2004`= gsub("\\,", ".",ENER$`2004`)
ENER$`2005`= gsub("\\,", ".",ENER$`2005`)
ENER$`2006`= gsub("\\,", ".",ENER$`2006`)
ENER$`2007`= gsub("\\,", ".",ENER$`2007`)
ENER[c(2:6)] = lapply(ENER[c(2:6)], as.numeric)
ENER$ENER = rowMeans(ENER[,2:6],na.rm = TRUE)
ENER= ENER[,c (1,7)]
ENER= ENER[complete.cases(ENER),]
row.names(ENER) = NULL
link9="https://docs.google.com/spreadsheets/d/e/2PACX-1vTJo2T8oxMssc3utiol3H4IZDOw4jq1sNu12vGh4LUz2aZU-BTtDvkhDaESiIwCJQ/pub?gid=508597872&single=true&output=csv"
ban=read.csv(link9,stringsAsFactors = F)
ban=ban[,c(1,48:52)]
names(ban)=c("Pais","2003","2004","2005","2006","2007")
ban$`2003`= gsub("\\,", ".",ban$`2003`)
ban$`2004`= gsub("\\,", ".",ban$`2004`)
ban$`2005`= gsub("\\,", ".",ban$`2005`)
ban$`2006`= gsub("\\,", ".",ban$`2006`)
ban$`2007`= gsub("\\,", ".",ban$`2007`)
ban[c(2:6)] = lapply(ban[c(2:6)], as.numeric)
ban$ban = rowMeans(ban[,2:6],na.rm = TRUE)
ban= ban[,c (1,7)]
ban= ban[complete.cases(ban),]
row.names(ban) = NULL
link10="https://docs.google.com/spreadsheets/d/e/2PACX-1vQ6hJgrir9ZBg6Qo5dfwQGluWp4oZLEfSVgz-sVzHEqav1pulMwix_2jNcjxcCkjw/pub?gid=1845220649&single=true&output=csv"
GAST=read.csv(link10,stringsAsFactors = F)
GAST=GAST[,c(1,48:52)]
names(GAST)=c("Pais","2003","2004","2005","2006","2007")
GAST$`2003`= gsub("\\,", ".",GAST$`2003`)
GAST$`2004`= gsub("\\,", ".",GAST$`2004`)
GAST$`2005`= gsub("\\,", ".",GAST$`2005`)
GAST$`2006`= gsub("\\,", ".",GAST$`2006`)
GAST$`2007`= gsub("\\,", ".",GAST$`2007`)
GAST[c(2:6)] = lapply(GAST[c(2:6)], as.numeric)
GAST$GAST = rowMeans(GAST[,2:6],na.rm = TRUE)
GAST= GAST[,c (1,7)]
GAST= GAST[complete.cases(GAST),]
row.names(GAST) = NULL
link11="https://docs.google.com/spreadsheets/d/e/2PACX-1vQoWu6HPrX8qbiqsewwImM89BxWol-bI-b_ubT6v_hxbPG9JTxXFxaxX5nUJTm-bg/pub?gid=72965045&single=true&output=csv"
EspVida=read.csv(link11, stringsAsFactors = F)
EspVida=EspVida[,c(1,48:52)]
names(EspVida) = c("Pais","2003","2004","2005", "2006", "2007")
EspVida$`2003` = gsub("\\,", ".", EspVida$`2003`)
EspVida$`2004` = gsub("\\,", ".", EspVida$`2004`)
EspVida$`2005` = gsub("\\,", ".", EspVida$`2005`)
EspVida$`2006` = gsub("\\,", ".", EspVida$`2006`)
EspVida$`2007` = gsub("\\,", ".", EspVida$`2007`)
EspVida[,c(2:6)]=lapply(EspVida[,c(2:6)],as.numeric) #volver numerico en grupo
EspVida$VidaM = rowMeans(EspVida[,2:6], na.rm = TRUE)
EspVida= EspVida[,c (1,7)]
EspVida = EspVida[complete.cases(EspVida),]
row.names(EspVida) = NULL
link13="https://docs.google.com/spreadsheets/d/e/2PACX-1vSri2T-73zRzhVczOzNqkAKmQ_qLcWrQHzuVl7QIFUE7fJRUbtKoDCeJ1zixpCjRA/pub?gid=1968467072&single=true&output=csv"
migra=read.csv(link13, stringsAsFactors = F)
migra=migra[,c(1,52)]
names(migra) = c("Pais","Migracion")
migra = migra[complete.cases(migra),]
row.names(migra) = NULL
migra[,c(2)]=as.numeric(migra[,c(2)])
link14="https://docs.google.com/spreadsheets/d/e/2PACX-1vSZRzhntcGTwaPWt9AzFNIuAhw_AIIz8e4xBtNopkV8Sib3CzKJ8sp4EFBfe0potA/pub?gid=711902649&single=true&output=csv"
GDP=read.csv(link14, stringsAsFactors = F)
GDP=GDP[,c(1,48:52)]
names(GDP) = c("Pais","2003","2004","2005", "2006", "2007")
GDP[,c(2:6)]=lapply(GDP[,c(2:6)],as.numeric) #volver numerico en grupo
## Warning in lapply(GDP[, c(2:6)], as.numeric): NAs introduced by coercion
## Warning in lapply(GDP[, c(2:6)], as.numeric): NAs introduced by coercion
## Warning in lapply(GDP[, c(2:6)], as.numeric): NAs introduced by coercion
## Warning in lapply(GDP[, c(2:6)], as.numeric): NAs introduced by coercion
## Warning in lapply(GDP[, c(2:6)], as.numeric): NAs introduced by coercion
GDP$GDP = rowMeans(GDP[,2:6], na.rm = TRUE)
GDP= GDP[,c (1,7)]
GDP = GDP[complete.cases(GDP),]
row.names(GDP) = NULL
link15="https://docs.google.com/spreadsheets/d/e/2PACX-1vQMbPO51JV-DhQLOOX9GnTSN7Z4hlKuFjX6Ft9QRS07q1i28GeqAsAAhdfXkNq-uA/pub?gid=1457611805&single=true&output=csv"
ODA=read.csv(link15, stringsAsFactors = F)
#la cobertura entre 2003 al2007
ODA=ODA[,c(1,48:52)]
names(ODA) = c("Pais","2003","2004","2005", "2006", "2007")
ODA$`2003` = gsub("\\,", ".", ODA$`2003`)
ODA$`2004` = gsub("\\,", ".", ODA$`2004`)
ODA$`2005` = gsub("\\,", ".", ODA$`2005`)
ODA$`2006` = gsub("\\,", ".", ODA$`2006`)
ODA$`2007` = gsub("\\,", ".", ODA$`2007`)
ODA[,c(2:6)]=lapply(ODA[,c(2:6)],as.numeric) #volver numerico en grupo
ODA$ODA = rowMeans(ODA[,2:6], na.rm = TRUE)
ODA= ODA[,c (1,7)]
ODA = ODA[complete.cases(ODA),]
row.names(ODA) = NULL
data1=merge(DataAct,DataFLM,all.x=T,all.y=T)
data2=merge(data1,DataMetodos,all.x=T,all.y=T)
data3=merge(data2,DataTugurios,all.x=T,all.y=T)
data4=merge(data3,DataGini,all.x=T,all.y=T)
data5=merge(data4,EDU,all.x=T,all.y=T)
data6=merge(data5,ENER,all.x=T,all.y=T)
data7=merge(data6,ban,all.x=T,all.y=T)
data8=merge(data7,GAST,all.x=T,all.y=T)
data9=merge(data8,EspVida,all.x=T,all.y=T)
data10=merge(data9,antiRetrov,all.x=T,all.y=T)
data11=merge(data10,migra,all.x=T,all.y=T)
#se incluye la varible dependiente
data12=merge(data11,DataVIH,all.x=T,all.y=T)
#se incluyen las variables control
data13=merge(data12,GDP,all.x=T,all.y=T)
datafinal=merge(data13,ODA,all.x=T,all.y=T)
datafinal=datafinal[-grep("San|high|Pacific|French|Caribbean|Early|Late|Island|Small|West|Sint|Other|OECD|North|World|Euro|Latin|Upper|High|Heavily|IBR|IDA|Least|Low|Middle|East|Central|Fragile|Post|Pre",datafinal$Pais),] #buscar y eliminar
row.names(datafinal)=NULL
datafinal=datafinal[-c(4,5,10,14,22,28,42,44,52,15,28,47,70,72,74,89,104,109,122,124,134,144,160,163,171:173),] #eliminar
row.names(datafinal)=NULL
Debido a la cantidad de Na’s imputamos datos para que la investigación resulte significativa Cambiamos Na’s por la media
datafinal[is.na(datafinal$PoblacionActiva),"PoblacionActiva"]=mean(datafinal$PoblacionActiva, na.rm=T)
datafinal[is.na(datafinal$FLM),"FLM"]=mean(datafinal$FLM, na.rm=T)
datafinal[is.na(datafinal$Metodos),"Metodos"]=mean(datafinal$Metodos, na.rm=T)
datafinal[is.na(datafinal$BarriosTugurios),"BarriosTugurios"]=mean(datafinal$BarriosTugurios, na.rm=T)
datafinal[is.na(datafinal$Gini),"Gini"]=mean(datafinal$Gini, na.rm=T)
datafinal[is.na(datafinal$EDU),"EDU"]=mean(datafinal$EDU,na.rm=T)
datafinal[is.na(datafinal$ENER),"ENER"]=mean(datafinal$ENER, na.rm=T)
datafinal[is.na(datafinal$ban),"ban"]=mean(datafinal$ban, na.rm=T)
datafinal[is.na(datafinal$GAST),"GAST"]=mean(datafinal$GAST, na.rm=T)
datafinal[is.na(datafinal$VidaM),"VidaM"]=mean(datafinal$VidaM, na.rm=T)
datafinal[is.na(datafinal$CobARet),"CobARet"]=mean(datafinal$CobARet, na.rm=T)
datafinal[is.na(datafinal$Migracion),"Migracion"]=mean(datafinal$Migracion, na.rm=T)
datafinal[is.na(datafinal$GDP),"GDP"]=mean(datafinal$GDP, na.rm=T)
datafinal[is.na(datafinal$ODA),"ODA"]=mean(datafinal$ODA, na.rm=T)
datafinal[is.na(datafinal$VIH),"VIH"]=mean(datafinal$VIH, na.rm=T)
#Ponemos las variables en forma intuitiva restando con el mayor valor
datafinal$BarriosTugurios= 100 - datafinal$BarriosTugurios
datafinal$Gini= 65 - datafinal$Gini
datafinal_x=datafinal
datafinal_x1=datafinal_x
#Establecemos variables de trabajo: sacamos la variable dependiente y las variables de control
datafinal = datafinal[,c(1:13)]
row.names(datafinal) = datafinal$Pais
datafinal$Pais = NULL
head(datafinal)
## PoblacionActiva FLM Metodos BarriosTugurios
## Afghanistan 43.55220 49.28240 14.16667 54.61052
## Albania 48.17600 29.15748 60.10000 54.61052
## Algeria 12.87380 49.28240 61.40000 54.61052
## Angola 75.08880 62.67960 48.47484 18.65000
## Antigua and Barbuda 50.20302 49.28240 48.47484 95.20000
## Argentina 49.57260 49.55246 78.90000 75.15000
## Gini EDU ENER ban GAST
## Afghanistan 26.08202 74.04294 22.79312 0.00137906 0.8101568
## Albania 34.40000 74.04294 100.00000 0.16976576 0.0873700
## Algeria 26.08202 72.64868 98.80855 0.38217637 0.1419467
## Angola 26.08202 74.04294 29.52772 0.04626376 0.8101568
## Antigua and Barbuda 26.08202 74.04294 92.07681 3.14222019 0.8101568
## Argentina 17.08000 98.61080 96.82490 2.99061632 0.4293720
## VidaM CobARet Migracion
## Afghanistan 59.7154 15.67344 -777497
## Albania 78.1624 6.20000 -217358
## Algeria 74.1012 14.60000 -357340
## Angola 55.3862 1.40000 85286
## Antigua and Barbuda 76.9038 15.67344 -92
## Argentina 78.5728 39.00000 -84998
#Estandarizar y hacer de lo convertido una data.frame:
datafinal_t = as.data.frame(scale(datafinal[,c(1:12)]))
head(datafinal_t)
## PoblacionActiva FLM Metodos BarriosTugurios
## Afghanistan -0.41221159 0.00000000 -1.6553099 0.000000
## Albania -0.12563291 -1.31451595 0.5608938 0.000000
## Algeria -2.31362969 0.00000000 0.6236165 0.000000
## Angola 1.54239690 0.87507607 0.0000000 -2.203769
## Antigua and Barbuda 0.00000000 0.00000000 0.0000000 2.487446
## Argentina -0.03907295 0.01763985 1.4679612 1.258722
## Gini EDU ENER ban
## Afghanistan 4.953283e-16 0.00000000 -1.5647099 -0.6317654
## Albania 1.159714e+00 0.00000000 0.7747476 -0.6053934
## Algeria 4.953283e-16 -0.09396017 0.7386454 -0.5721265
## Angola 4.953283e-16 0.00000000 -1.3606435 -0.6247357
## Antigua and Barbuda 4.953283e-16 0.00000000 0.5346658 -0.1398600
## Argentina -1.255084e+00 1.65564176 0.6785386 -0.1636036
## GAST VidaM CobARet Migracion
## Afghanistan 0.0000000 -1.0630559 0.00000000 -0.65213554
## Albania -1.0525215 0.7444349 -0.56381706 -0.13553063
## Algeria -0.9730470 0.3465067 -0.06388625 -0.26463321
## Angola 0.0000000 -1.4872436 -0.84949181 0.14359183
## Antigua and Barbuda 0.0000000 0.6211136 0.00000000 0.06484943
## Argentina -0.5544984 0.7846471 1.38829374 -0.01345767
#Activar el paquete de analisis factorial:
library(psych)
#Para ver el nivel de correlacion:
indice = cor(datafinal_t) #sacar la correlaci?n de los puntajes estandarizadas
indice
## PoblacionActiva FLM Metodos BarriosTugurios
## PoblacionActiva 1.00000000 0.80208512 -0.14478603 -0.395453303
## FLM 0.80208512 1.00000000 -0.13240476 -0.369626314
## Metodos -0.14478603 -0.13240476 1.00000000 0.479526914
## BarriosTugurios -0.39545330 -0.36962631 0.47952691 1.000000000
## Gini -0.08203094 -0.04556132 -0.04432652 -0.177027288
## EDU -0.16497052 -0.16015656 0.50876928 0.489599348
## ENER -0.42977261 -0.34228376 0.68177873 0.560495888
## ban 0.12436221 0.16291424 0.31907832 0.010427580
## GAST 0.10028008 0.14294247 0.19552781 -0.035577068
## VidaM -0.30690017 -0.23551744 0.66444678 0.463750181
## CobARet -0.08952653 -0.05466614 0.32865247 0.181073910
## Migracion 0.09886526 0.10644979 0.06620401 0.003493871
## Gini EDU ENER ban GAST
## PoblacionActiva -0.08203094 -0.16497052 -0.4297726 0.12436221 0.10028008
## FLM -0.04556132 -0.16015656 -0.3422838 0.16291424 0.14294247
## Metodos -0.04432652 0.50876928 0.6817787 0.31907832 0.19552781
## BarriosTugurios -0.17702729 0.48959935 0.5604959 0.01042758 -0.03557707
## Gini 1.00000000 -0.12370414 0.2118376 0.38919981 0.32618412
## EDU -0.12370414 1.00000000 0.5600288 0.07941556 -0.01606843
## ENER 0.21183763 0.56002877 1.0000000 0.35120334 0.22602599
## ban 0.38919981 0.07941556 0.3512033 1.00000000 0.76956802
## GAST 0.32618412 -0.01606843 0.2260260 0.76956802 1.00000000
## VidaM 0.25703440 0.51290861 0.8811129 0.51590646 0.35678544
## CobARet 0.23923360 0.24273557 0.4385893 0.45332382 0.31641561
## Migracion 0.01342745 0.16542303 0.1544044 0.24732072 0.18777277
## VidaM CobARet Migracion
## PoblacionActiva -0.3069002 -0.08952653 0.098865261
## FLM -0.2355174 -0.05466614 0.106449789
## Metodos 0.6644468 0.32865247 0.066204008
## BarriosTugurios 0.4637502 0.18107391 0.003493871
## Gini 0.2570344 0.23923360 0.013427450
## EDU 0.5129086 0.24273557 0.165423031
## ENER 0.8811129 0.43858933 0.154404435
## ban 0.5159065 0.45332382 0.247320725
## GAST 0.3567854 0.31641561 0.187772767
## VidaM 1.0000000 0.53011883 0.174307420
## CobARet 0.5301188 1.00000000 0.143677663
## Migracion 0.1743074 0.14367766 1.000000000
Esta correlación puede seer mejor vista en un grafico
#Grafico del nivel de correlacion:
cor.plot(indice,
numbers=T,
upper=FALSE,
main = "Correlation",
show.legend = FALSE) #verlo en un gr?fico
#Sacar el KMO para ver que tan buena idea es juntarlos en un indice (se quiere que el overall MSA sea lo mas cercano a 1):
KMO(datafinal_t)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = datafinal_t)
## Overall MSA = 0.78
## MSA for each item =
## PoblacionActiva FLM Metodos BarriosTugurios
## 0.65 0.66 0.87 0.89
## Gini EDU ENER ban
## 0.66 0.90 0.79 0.71
## GAST VidaM CobARet Migracion
## 0.71 0.82 0.93 0.71
El KMO sale cercano a uno por lo cual significa que es probable juntarlos en un indice
#Prueba de esfericidad de bartlett
# Si Sig. (p-valor) < 0.05 aceptamos H0 (hipótesis nula) > se puede aplicar el análisis factorial. Si Sig. (p-valor) > 0.05 rechazamos H0 > no se puede aplicar el análisis factorial.
library(psych)
cortest.bartlett(datafinal_t, n=nrow(datafinal_t))
## R was not square, finding R from data
## $chisq
## [1] 1169.816
##
## $p.value
## [1] 1.345082e-201
##
## $df
## [1] 66
La matriz de correlación no es igual a la matriz de identidad
#Para saber cuantos indices se deben formar segun R (donde este el salto mas grande):
fa.parallel(indice, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(datafinal_t)) #cuantos indices deberia formar
## Parallel analysis suggests that the number of factors = 3 and the number of components = NA
Se recomienda formar 3 indices
#Código para realizar el analisis factorial:
datafinal_tF = fa(datafinal_t, #La F es importante!
nfactors=3, #Numero de dimensiones que se quieren tener
rotate="varimax") #codigo para el analisis factorial solo cambiar la data y el numero de factores
#Para ver a donde se fue cada componente (la varianza nos dice el porcentaje resumido de cada variable):
datafinal_tF$loadings
##
## Loadings:
## MR1 MR3 MR2
## PoblacionActiva -0.205 0.919
## FLM -0.186 0.816
## Metodos 0.752 0.166
## BarriosTugurios 0.654 -0.117 -0.269
## Gini -0.112 0.535 -0.142
## EDU 0.718
## ENER 0.814 0.335 -0.293
## ban 0.192 0.887 0.192
## GAST 0.740 0.143
## VidaM 0.768 0.495 -0.177
## CobARet 0.358 0.446
## Migracion 0.150 0.187 0.156
##
## MR1 MR3 MR2
## SS loadings 3.043 2.263 1.803
## Proportion Var 0.254 0.189 0.150
## Cumulative Var 0.254 0.442 0.592
#Para ver el diagrama de analisis factorial:
fa.diagram(datafinal_tF)
En un indice se agrupa acceso a energia, esperanza de vida de mujeres, acceso a metodos anticonceptivos, alfabetización y barrios en tugurios En el otro indice se encuentra banda ancha, gasto en desarrollo, gini (desigualdad), cobertura de antiretroviurales y migración. En el tercer indice esta Población Activa y Fuerza laboral en la población de mujeres. Basandonos en las variables que agrupan llamaremos al primer indice (MR1) Densidad (Densidad Estatal, ya que la educación, metodos anticonceptivos y esperanza de vida de la población son dimensiones que el Estado debe afrontar). Al segundo indice (MR2) lo llamremos Desarrollo, ya que cuenta con variables que nos permitiran ver que nivel de desarrollo general tiene un país. Por último, el tercer indice (MR3) sera el de empoderamiento de la mujer, ya que tendra variables relacionadas con la fuerza laboral de la mujer y su participación en la sociedad.
#Para ver el tipo de análisis factorial:
# mientras mas grande mejor (lo que aporta)
sort(datafinal_tF$communalities)
## Migracion Gini CobARet BarriosTugurios
## 0.0815926 0.3190099 0.3281595 0.5135866
## EDU GAST Metodos FLM
## 0.5202725 0.5722523 0.5934867 0.7050810
## ban ENER VidaM PoblacionActiva
## 0.8608920 0.8615418 0.8657544 0.8864326
La que menos aporta al modelo es CobARet, GINI Y Migración. La variable de migración es la que menos aporta, por ello entenderemos que es una variable que no se relaciona mucho con los conceptos que tratan de englobar los indices. Mientras más cerca a uno más aporta - Migración tiene 0.08
# mientras mas grande peor (lo que mantiene)
sort(datafinal_tF$uniquenesses)
## PoblacionActiva VidaM ENER ban
## 0.1135680 0.1342456 0.1384579 0.1391077
## FLM Metodos GAST EDU
## 0.2949195 0.4065133 0.4277475 0.4797271
## BarriosTugurios CobARet Gini Migracion
## 0.4864134 0.6718391 0.6809903 0.9184074
Mientras más cerca a 1 menos se aporta Mismos comportamiento en Gini, Migración y CobARET. Siendo Migración el más cercano a uno (0.91). Lo que quiere decir que no comparte con las demás variables.
sort(datafinal_tF$complexity)
## EDU GAST Metodos PoblacionActiva
## 1.018643 1.090942 1.097440 1.099530
## FLM ban Gini BarriosTugurios
## 1.118225 1.190821 1.233128 1.402618
## ENER VidaM CobARet Migracion
## 1.614685 1.834713 1.919940 2.882015
Se puede ver que la variable de migración coquetea con tres indices (2.88) La variable de VidaM y CobARet con dos. En menor medida ENER tambien coquetea con dos variables. Esto quiere decir que Migración podría caber bien en cualquiera de los tres indices, mientras que VidaM (1.8), CobARet (1.9)y ENER(1.6) podrían estar en dos de los indices. Hay que realtar que estas pruebas no nos dicen con que indices coquetean solo que pueden pertencer a más de uno.
#Para ver los puntajes:
datafinal_tF$scores
## MR1 MR3 MR2
## Afghanistan -1.20324499 -0.47977767 -4.545135e-01
## Albania 0.51782836 -0.30570481 -4.868022e-01
## Algeria 0.18369692 -0.24833459 -1.755605e+00
## Angola -0.98351789 -0.66071980 1.274661e+00
## Antigua and Barbuda 0.81572604 -0.31021051 6.717052e-02
## Argentina 1.51119546 -0.64330578 3.201838e-01
## Armenia 0.42395885 -0.34390537 -3.116576e-01
## Australia 0.66835467 1.00536819 4.952735e-01
## Austria 0.22126099 1.77427717 4.229707e-02
## Azerbaijan 0.63284345 -0.57925028 3.621763e-01
## Bangladesh -1.27904472 0.06736933 -1.708268e+00
## Barbados 0.82922416 0.86871736 1.068633e+00
## Belarus 0.55380093 -0.32722899 2.358480e-01
## Belgium 0.28049211 2.05062959 -1.864162e-01
## Belize 0.35395955 -0.33082338 -5.353426e-01
## Benin -1.78031535 -0.07093335 7.912362e-01
## Bhutan -0.59141244 0.03777054 5.466810e-01
## Bolivia 0.64715383 -1.01731437 9.539263e-01
## Bosnia and Herzegovina 0.23985564 -0.06342444 -9.896971e-01
## Botswana -0.61454980 -0.95112232 3.053162e-01
## Brazil 1.47451461 -0.75477804 6.622540e-01
## Bulgaria 0.53621812 0.04963648 -2.296717e-01
## Burkina Faso -1.94869042 -0.36342427 5.972706e-01
## Burundi -1.52769382 -0.23704339 1.297558e+00
## Cabo Verde 0.44881603 -0.68065850 3.308659e-01
## Cambodia -0.77940656 -0.44495174 1.539721e+00
## Cameroon -0.58046690 -0.85831130 1.578966e+00
## Canada 0.62790505 2.05788784 9.535057e-01
## Chad -2.74110875 0.42890661 1.763252e-01
## Chile 1.09330424 -0.09540439 -3.853732e-01
## China 1.03104555 -0.35572204 8.621121e-01
## Colombia 1.60013676 -1.13835719 5.602273e-01
## Comoros -0.56450431 -0.61463170 -9.320522e-01
## Congo, Dem. Rep. -1.55528427 -0.18395898 1.076816e+00
## Costa Rica 1.52264468 -0.84724164 -1.051364e-01
## Croatia 0.47957189 0.19300037 -3.120594e-01
## Cuba 0.72283707 -0.35107936 -7.646429e-01
## Cyprus 0.50956811 0.32189915 1.580397e-01
## Czech Republic 0.52103321 0.63522421 2.928096e-02
## Denmark -0.00501266 2.95035873 6.925332e-01
## Djibouti -0.74797206 -0.49615003 -1.765107e-01
## Dominican Republic 1.11805315 -0.87112157 -3.455481e-01
## Ecuador 1.52689623 -1.12182085 4.719047e-01
## Egypt, Arab Rep. 0.27028131 -0.47115314 -1.883220e+00
## El Salvador 0.94420921 -0.79671471 -7.330130e-02
## Equatorial Guinea -0.67848302 -0.58035306 1.766820e-02
## Eritrea -0.50595721 -0.41467800 1.072605e+00
## Estonia 0.39767260 1.19319353 3.020644e-01
## Eswatini -1.22285335 -0.42756551 -6.807244e-01
## Ethiopia -2.01296871 -0.07167925 9.773982e-01
## Fiji -0.03280583 -0.17306409 -9.184170e-01
## Finland 0.26776067 2.45717342 5.572472e-01
## France 0.52021821 1.79408406 1.232708e-01
## Gabon -0.12458702 -0.69994131 -5.401751e-01
## Gambia, The -0.53601442 -0.92639879 2.430064e-05
## Georgia 0.53891143 -0.34971681 2.656000e-01
## Germany 0.38005872 1.69222103 1.082606e-01
## Ghana -0.38222708 -0.80206824 1.117280e+00
## Greece 0.74856406 0.12302575 -4.237862e-01
## Grenada 1.03075499 -0.50066842 2.363425e-01
## Guatemala 0.47595256 -0.68296029 -3.261306e-01
## Guinea -1.91281051 0.11936870 2.238591e-01
## Guinea-Bissau -1.77698535 0.03302695 5.300341e-01
## Guyana -0.13886332 -0.36197996 -7.868769e-01
## Haiti -1.32259032 0.16854105 1.651050e-01
## Honduras 0.72672689 -0.58538463 -2.120969e-01
## Hong Kong SAR, China 0.65881197 2.24923650 3.975899e-01
## Hungary 0.16784579 0.82592218 -5.122927e-01
## Iceland 0.22770153 2.83162083 1.492866e+00
## India -0.48648346 -0.40089803 -1.303060e+00
## Indonesia 0.57401431 -0.74408426 -1.206598e-01
## Iran, Islamic Rep. 0.69427638 -0.67704454 -1.779566e+00
## Iraq -0.29936071 -0.06555626 -2.520912e+00
## Ireland 0.70349173 0.76583814 2.815741e-01
## Israel 0.28435892 2.16813639 4.617136e-01
## Italy 0.32519120 1.27837620 -7.211111e-01
## Jamaica 0.56312365 -0.27308990 4.531257e-01
## Japan 0.38207116 2.22495114 3.807026e-02
## Jordan 0.53946217 -0.43589648 -2.180507e+00
## Kazakhstan 0.48510296 -0.45187045 8.099055e-01
## Kenya -0.82277350 -0.89359474 6.702886e-01
## Kiribati -0.42965128 -0.25883653 -5.635549e-01
## Korea, Dem. People’s Rep. -0.33200952 -0.25256170 1.202305e+00
## Korea, Rep. 0.25577706 2.87000333 2.388063e-01
## Kosovo 0.08103797 0.18690850 -4.021336e-01
## Kuwait 0.80068541 -0.34193437 4.771987e-02
## Kyrgyz Republic 0.36315717 -0.41815182 1.461403e-01
## Lao PDR -0.57415029 -0.36771374 1.579587e+00
## Lebanon 0.46520634 -0.16851847 -1.740464e+00
## Lesotho -1.17870990 -1.18490682 3.523659e-01
## Liberia -2.00423123 0.05479847 1.306224e-01
## Libya 0.17400039 0.21354890 -1.298683e+00
## Lithuania 0.48567131 0.55581882 1.318413e-01
## Luxembourg 0.19230676 1.82019080 -2.638120e-01
## Macao SAR, China 0.90763504 1.07190312 6.671158e-01
## Madagascar -0.92878890 -0.61642901 1.949510e+00
## Malawi -1.28330629 -0.84102714 1.545232e+00
## Malaysia 0.54119367 -0.20492408 -2.642250e-01
## Maldives 0.52687202 -0.26383513 -3.729815e-01
## Mali -2.16802659 -0.20205178 1.730922e-01
## Malta 0.31577247 1.20059789 -1.149326e+00
## Mauritania -1.66448296 -0.12941110 -1.289990e+00
## Mauritius 0.33988348 -0.13354825 -6.333960e-01
## Mexico 1.39280310 -0.75263973 -2.453088e-01
## Moldova 0.44587754 -0.45786863 -2.606506e-01
## Mongolia 0.11604862 -0.55692578 2.653662e-01
## Montenegro 0.47717277 0.01821399 -4.295329e-01
## Morocco 0.15146344 -0.42545277 -1.499834e+00
## Mozambique -1.62687127 -0.51369209 1.962853e+00
## Myanmar -0.43576193 -0.56124269 1.902405e-01
## Namibia -0.06850017 -1.30766823 1.918986e-01
## Nauru 0.17793103 0.14372564 -5.220583e-02
## Nepal -0.14989234 -0.66816039 2.003684e+00
## Netherlands 0.35430007 2.63043237 5.989701e-01
## New Zealand 0.63287260 0.87891496 6.532258e-01
## Nicaragua 0.55694306 -0.66097426 -2.004697e-01
## Niger -2.25859297 -0.09038758 2.402579e-01
## Nigeria -1.56836949 -0.42907336 -4.068916e-01
## Norway 0.62946970 2.13484554 9.633770e-01
## Oman 0.34184034 -0.15148518 -1.541782e+00
## Pakistan -0.96273905 0.03553233 -2.270596e+00
## Palau 0.19904806 -0.16793811 1.807081e-02
## Panama 0.92111818 -0.56197632 -9.204489e-03
## Paraguay 1.50676699 -1.28152867 6.162040e-01
## Peru 1.13101419 -0.95075954 1.156444e+00
## Philippines 0.46373981 -0.72887273 -8.048263e-02
## Poland 0.42668481 0.33333129 -2.166463e-01
## Portugal 0.87388202 0.71211402 4.819948e-01
## Puerto Rico 0.49180519 0.24623324 -8.141910e-01
## Qatar 0.74290118 0.07635151 -1.666399e-01
## Romania 0.65006710 0.05613950 -1.330176e-01
## Russian Federation 0.64668266 -0.36711834 5.130939e-01
## Rwanda -0.97928438 -0.80835305 2.072912e+00
## Samoa 0.10683373 -0.18105073 -1.471464e+00
## Sao Tome and Principe -0.53618625 -0.36806373 -8.509493e-01
## Saudi Arabia 0.35217178 -0.32289500 -1.973828e+00
## Senegal -1.41214001 -0.09256104 -1.312863e+00
## Serbia 0.27945002 0.13123043 -4.118994e-01
## Sierra Leone -2.69371224 0.34626486 4.543126e-01
## Singapore 0.37922394 1.59634433 2.561811e-01
## Slovenia 0.57513222 0.98781245 2.086841e-01
## Somalia -2.10645482 0.19018840 -1.663624e+00
## South Africa 0.65513018 -1.40031400 1.111089e-01
## South Asia -0.61767566 -0.22357627 -1.503248e+00
## South Sudan -1.54193312 -0.36016454 8.521551e-01
## Spain 0.87703223 0.97771058 4.153732e-03
## Sri Lanka 0.59650761 -0.63841480 -6.925076e-01
## Sub-Saharan Africa -1.13284690 -0.64290731 3.538425e-01
## Sudan -1.23204981 -0.37876377 -1.365324e+00
## Suriname 0.80498003 -0.75082716 -4.949759e-01
## Sweden 0.01498980 2.85012182 6.044308e-01
## Switzerland 0.26406486 2.53205704 7.122463e-01
## Syrian Arab Republic 0.50269165 -0.43577367 -2.002671e+00
## Tajikistan -0.08297794 -0.21104835 -1.109754e+00
## Tanzania -0.94591669 -0.81783423 2.134836e+00
## Thailand 1.33268149 -0.91160694 1.160721e+00
## Timor-Leste -1.55886771 0.04825996 -1.148706e+00
## Togo -1.19446021 -0.56408700 1.657382e+00
## Tonga 0.39697559 -0.31423822 -4.121152e-01
## Trinidad and Tobago 0.58323010 -0.50306657 1.073342e-01
## Tunisia 0.33067476 -0.17754625 -1.646293e+00
## Turkey 0.89235638 -0.43349810 -1.391426e+00
## Turkmenistan 0.25910271 0.02279051 7.798795e-02
## Tuvalu 0.12666801 -0.07955990 -8.808507e-02
## Uganda -1.33147719 -0.74043597 6.492588e-01
## Ukraine 0.37263200 -0.17859415 -1.032683e-02
## United Arab Emirates 0.59822081 -0.03765177 -6.112670e-01
## United Kingdom 0.64194055 1.42097566 5.185839e-01
## United States 0.67101581 1.55155295 8.745252e-01
## Uruguay 1.31063454 -0.50814937 4.113549e-01
## Uzbekistan 0.49823618 -0.54721807 -1.199783e-01
## Vanuatu -0.34934402 -0.56868913 4.939358e-01
## Venezuela, RB 1.17226306 -0.63629431 1.884160e-01
## Vietnam 0.98805771 -0.53064440 1.309805e+00
## Yemen, Rep. -1.58829721 0.21144627 -2.557939e+00
## Zambia -0.87418667 -1.13072245 1.093697e+00
## Zimbabwe -0.39110358 -1.42688479 1.726837e+00
#Para crear otra data frame solo con los indices creados:
dataindices=as.data.frame(datafinal_tF$scores)
names(dataindices) = c("Densidad", "Empoderamiento", "Desarrollo")
head(dataindices)
## Densidad Empoderamiento Desarrollo
## Afghanistan -1.2032450 -0.4797777 -0.45451346
## Albania 0.5178284 -0.3057048 -0.48680224
## Algeria 0.1836969 -0.2483346 -1.75560460
## Angola -0.9835179 -0.6607198 1.27466053
## Antigua and Barbuda 0.8157260 -0.3102105 0.06717052
## Argentina 1.5111955 -0.6433058 0.32018376
#Merge final con la nueva data.frame de los indices creados:
datafinal=merge(datafinal, dataindices, by=0) #El 0 significa que se juntan por el indice (que en el caso de una de las datas esta formado por los nombres de los paises)
head(datafinal)
## Row.names PoblacionActiva FLM Metodos BarriosTugurios
## 1 Afghanistan 43.55220 49.28240 14.16667 54.61052
## 2 Albania 48.17600 29.15748 60.10000 54.61052
## 3 Algeria 12.87380 49.28240 61.40000 54.61052
## 4 Angola 75.08880 62.67960 48.47484 18.65000
## 5 Antigua and Barbuda 50.20302 49.28240 48.47484 95.20000
## 6 Argentina 49.57260 49.55246 78.90000 75.15000
## Gini EDU ENER ban GAST VidaM CobARet
## 1 26.08202 74.04294 22.79312 0.00137906 0.8101568 59.7154 15.67344
## 2 34.40000 74.04294 100.00000 0.16976576 0.0873700 78.1624 6.20000
## 3 26.08202 72.64868 98.80855 0.38217637 0.1419467 74.1012 14.60000
## 4 26.08202 74.04294 29.52772 0.04626376 0.8101568 55.3862 1.40000
## 5 26.08202 74.04294 92.07681 3.14222019 0.8101568 76.9038 15.67344
## 6 17.08000 98.61080 96.82490 2.99061632 0.4293720 78.5728 39.00000
## Migracion Densidad Empoderamiento Desarrollo
## 1 -777497 -1.2032450 -0.4797777 -0.45451346
## 2 -217358 0.5178284 -0.3057048 -0.48680224
## 3 -357340 0.1836969 -0.2483346 -1.75560460
## 4 85286 -0.9835179 -0.6607198 1.27466053
## 5 -92 0.8157260 -0.3102105 0.06717052
## 6 -84998 1.5111955 -0.6433058 0.32018376
#Grafico 1
plot(datafinal[c(14,15)])
Este mapa solo nos muestra las cordenadas en las que se encuentran los países. No hay que asumir que por encontrarse en el extremo superior tiene un puntaje mayor. Este mapa nos sirve para ver el comportamiento de los paises en estas dimensiones. La mayor cantidad de paises se ubica en el cuartil inferior de las dos dimensiones. Es decir, que comparten resultados similares en empoderamiento y densidad.
#Grafico2
plot(datafinal[c(14,16)])
Vemos como se comportan las variables en la dimensión de Desarrollo y Densidad. Se ubican cercanas al cuartil derecho superior. En estas dos dimensiones los paises se ven más dispersos. Es decir que no comparten las mismas caracteristicas en torno a estas dimensiones.
#Grafico3
plot(datafinal[c(15,16)])
En este último grafico podemos ver que los países se encuentran cercanos al cuartil izquierdo inferior. En este grafico se ve un compartemiento similar en torno a desarrollo y empoderamiento. Es decir, que existen varios casos que comparten caracteristicas en torno a estas dos dimensiones. Visualizando los tres graficos podemos concluir que pocos países comparten similares caracteristicas en las dimesniones de densidad y desarrollo.
Hasta aqui solo hemos visto los puntos y el comportamiento general. Con el grafico acontinuación podremos ver cuales son estos países.
library(ggrepel)
## Loading required package: ggplot2
##
## Attaching package: 'ggplot2'
## The following objects are masked from 'package:psych':
##
## %+%, alpha
base=ggplot(dataindices,aes(x=Densidad,y=Empoderamiento))
base + geom_point() + geom_text_repel(aes(label = row.names(dataindices))) + xlim(-3,-2 ) + ylim(0, 1)
## Warning: Removed 173 rows containing missing values (geom_point).
## Warning: Removed 173 rows containing missing values (geom_text_repel).
Vemos los valores más lejados y nos hacemos una idea de que caracteristicas tienen los países ubicados a la izquierda superior. ##### Densidad - Desarrollo
base=ggplot(dataindices,aes(x=Densidad,y=Desarrollo))
base + geom_point() + geom_text_repel(aes(label = row.names(dataindices))) + xlim(-2,-1) + ylim(1, 2)
## Warning: Removed 172 rows containing missing values (geom_point).
## Warning: Removed 172 rows containing missing values (geom_text_repel).
Tanto los países como Malawi, Togo y Burundi comparten caracteristicas similares en Desarrollo y Densidad. (Son de los paises más alejados en este mapa)
base=ggplot(dataindices,aes(x=Empoderamiento,y=Desarrollo))
base + geom_point() + geom_text_repel(aes(label = row.names(dataindices))) + xlim(2, 3) + ylim(0, 1)
## Warning: Removed 166 rows containing missing values (geom_point).
## Warning: Removed 166 rows containing missing values (geom_text_repel).
En este grafico vemos los países más alejados del gráfico 3, si bien no le podemos dar un significado valorativo. Ver que países se alejan del comportamiento del resto nos puede dar una idea.
Para poder ver como se comportan los páises en relación a todad nuestras variables independientes haremos un mapa de similitudes. No usaremos los indices en esta ocasión, solo las variables independientes. Acá nos centraremos en los casos y no en las dimensiones. Para el Mapa de Similitude evaluaremos el comportamiento en relación a todas las variables independientes.
# Calcular las distancias eliminando a los indices:
datafinal_d=dist(datafinal_t) #Se calculan las distancias eliminando a los índices
Se calculan las distancias.
#Para poner el numero de dimensiones que se quieren y ver que tan indicado es juntar las variables con el GOF (mientras mas cerca a 1 mejor):
datafinalx_map = cmdscale(datafinal_d,eig=TRUE, k=2) # k sugiere el numero de dimensiones. Lo ideal es 2 porque con 1 no tendria sentido y con 3 seria tridimensional
datafinalx_map$GOF # mientras mas cerca a 1 mejor.
## [1] 0.5555993 0.5555993
Es preferible que sean dos diemsniones de lo contrario sera dificil interpretar un mapa con más dimensiones. En esta herramienta desconocemos cuales son las dimensiones.
#Graficar el mapa de similitudes:
titulo="Mapa de Similitudes entre paises"
x =datafinalx_map$points[,1]
y = datafinalx_map$points[,2]
plot(x, y, main=titulo) #La Y y la X no son resúmenes de las variables, son las coordenadas de los casos.
#Graficar el mapa de similitudes mostrando los nombres de los paises:
plot(x, y, xlab="Dimensión 1", ylab="Dimensión 2", main=titulo,
type="n") # 'n' evita que se pongan los puntos.
#etiquetas y colores de los puntos
text(x, y,labels = rownames(datafinalx_map$points),cex=0.5) #El 1 indica la escala en la que se muestra el tamaño de los nombres de los paises
datafinal_map_DF=as.data.frame(datafinalx_map$points)
set.seed(15)#Ponemos un set.seed para que sea replicable y los resultados sean los mismos sin importar donde se copie el codigo
La ventaja de usar el analisis de conglomerados es que no nos pone limites frente a las variables que usaremos y nos permite dividir los casos en los grupos que querramos.
#Para pedir el numero de grupos:
datafinal_clus=kmeans(datafinal_d,centers = 5) #El 5 hace referencia al numero de grupos que se piden, tiene que haber sustento para ello
datafinal_clus$cluster
## Afghanistan Albania
## 1 1
## Algeria Angola
## 1 2
## Antigua and Barbuda Argentina
## 5 5
## Armenia Australia
## 1 4
## Austria Azerbaijan
## 4 1
## Bangladesh Barbados
## 2 4
## Belarus Belgium
## 1 4
## Belize Benin
## 1 2
## Bhutan Bolivia
## 1 5
## Bosnia and Herzegovina Botswana
## 1 1
## Brazil Bulgaria
## 5 1
## Burkina Faso Burundi
## 2 2
## Cabo Verde Cambodia
## 1 2
## Cameroon Canada
## 2 3
## Chad Chile
## 2 5
## China Colombia
## 5 5
## Comoros Congo, Dem. Rep.
## 5 2
## Costa Rica Croatia
## 5 1
## Cuba Cyprus
## 1 1
## Czech Republic Denmark
## 4 3
## Djibouti Dominican Republic
## 1 5
## Ecuador Egypt, Arab Rep.
## 5 5
## El Salvador Equatorial Guinea
## 1 1
## Eritrea Estonia
## 1 4
## Eswatini Ethiopia
## 1 2
## Fiji Finland
## 1 3
## France Gabon
## 3 1
## Gambia, The Georgia
## 1 1
## Germany Ghana
## 3 2
## Greece Grenada
## 4 5
## Guatemala Guinea
## 1 2
## Guinea-Bissau Guyana
## 2 1
## Haiti Honduras
## 2 5
## Hong Kong SAR, China Hungary
## 4 4
## Iceland India
## 3 5
## Indonesia Iran, Islamic Rep.
## 1 5
## Iraq Ireland
## 5 4
## Israel Italy
## 3 4
## Jamaica Japan
## 1 3
## Jordan Kazakhstan
## 5 1
## Kenya Kiribati
## 2 1
## Korea, Dem. People’s Rep. Korea, Rep.
## 1 3
## Kosovo Kuwait
## 1 4
## Kyrgyz Republic Lao PDR
## 1 2
## Lebanon Lesotho
## 5 2
## Liberia Libya
## 2 1
## Lithuania Luxembourg
## 1 4
## Macao SAR, China Madagascar
## 4 2
## Malawi Malaysia
## 2 1
## Maldives Mali
## 1 2
## Malta Mauritania
## 4 2
## Mauritius Mexico
## 1 5
## Moldova Mongolia
## 1 1
## Montenegro Morocco
## 1 5
## Mozambique Myanmar
## 2 1
## Namibia Nauru
## 5 1
## Nepal Netherlands
## 2 3
## New Zealand Nicaragua
## 4 1
## Niger Nigeria
## 2 2
## Norway Oman
## 3 1
## Pakistan Palau
## 5 1
## Panama Paraguay
## 5 5
## Peru Philippines
## 5 1
## Poland Portugal
## 1 4
## Puerto Rico Qatar
## 1 4
## Romania Russian Federation
## 4 1
## Rwanda Samoa
## 2 1
## Sao Tome and Principe Saudi Arabia
## 1 5
## Senegal Serbia
## 2 1
## Sierra Leone Singapore
## 2 4
## Slovenia Somalia
## 4 2
## South Africa South Asia
## 5 3
## South Sudan Spain
## 2 4
## Sri Lanka Sub-Saharan Africa
## 1 2
## Sudan Suriname
## 2 5
## Sweden Switzerland
## 3 3
## Syrian Arab Republic Tajikistan
## 5 1
## Tanzania Thailand
## 2 5
## Timor-Leste Togo
## 2 2
## Tonga Trinidad and Tobago
## 1 1
## Tunisia Turkey
## 1 5
## Turkmenistan Tuvalu
## 1 1
## Uganda Ukraine
## 2 1
## United Arab Emirates United Kingdom
## 5 4
## United States Uruguay
## 3 5
## Uzbekistan Vanuatu
## 1 1
## Venezuela, RB Vietnam
## 5 1
## Yemen, Rep. Zambia
## 2 2
## Zimbabwe
## 2
¿Por que lo dividimos en 5? Dividiendolo en 5 grupos tenemos variables más homogeneas. En este caso le hemos pedido a R que tome en consideración las distancias. De no haberlo hecho R pudo haber tomado el criterio aleatorio.
#Para ver la cantidad de paises en cada grupo:
table(datafinal_clus$cluster)
##
## 1 2 3 4 5
## 64 40 15 23 35
Decidí dividir en 5 grupos para tener grupos con una cantidad más homogenea. Es importante que el numero sea inpar de esa forma se puede ver un orden mayor, menor y mediano.
#Para graficar el mapa:
library(rgdal)
## Loading required package: sp
## rgdal: version: 1.4-4, (SVN revision 833)
## Geospatial Data Abstraction Library extensions to R successfully loaded
## Loaded GDAL runtime: GDAL 2.1.3, released 2017/20/01
## Path to GDAL shared files: /usr/share/gdal/2.1
## GDAL binary built with GEOS: TRUE
## Loaded PROJ.4 runtime: Rel. 4.9.2, 08 September 2015, [PJ_VERSION: 492]
## Path to PROJ.4 shared files: (autodetected)
## Linking to sp version: 1.3-1
folderMap='MapaMundo' #Nombre del archivo que contiene al mapa
fileName='world_map.shp'
fileToRead=file.path(folderMap,fileName)
mapamundo= readOGR(fileToRead,stringsAsFactors=TRUE)
## OGR data source with driver: ESRI Shapefile
## Source: "/cloud/project/MapaMundo/world_map.shp", layer: "world_map"
## with 246 features
## It has 11 fields
## Integer64 fields read as strings: POP2005
plot(mapamundo, border='grey')
El analisis de Conglomerdos nos permitira ver los casos en un mapa interactivo y por colores.
#Para crear un objeto (cluster) que mezcle la informacion de los grupos con el mapa:
MAPA=as.data.frame(datafinal_clus$cluster)
MAPA
## datafinal_clus$cluster
## Afghanistan 1
## Albania 1
## Algeria 1
## Angola 2
## Antigua and Barbuda 5
## Argentina 5
## Armenia 1
## Australia 4
## Austria 4
## Azerbaijan 1
## Bangladesh 2
## Barbados 4
## Belarus 1
## Belgium 4
## Belize 1
## Benin 2
## Bhutan 1
## Bolivia 5
## Bosnia and Herzegovina 1
## Botswana 1
## Brazil 5
## Bulgaria 1
## Burkina Faso 2
## Burundi 2
## Cabo Verde 1
## Cambodia 2
## Cameroon 2
## Canada 3
## Chad 2
## Chile 5
## China 5
## Colombia 5
## Comoros 5
## Congo, Dem. Rep. 2
## Costa Rica 5
## Croatia 1
## Cuba 1
## Cyprus 1
## Czech Republic 4
## Denmark 3
## Djibouti 1
## Dominican Republic 5
## Ecuador 5
## Egypt, Arab Rep. 5
## El Salvador 1
## Equatorial Guinea 1
## Eritrea 1
## Estonia 4
## Eswatini 1
## Ethiopia 2
## Fiji 1
## Finland 3
## France 3
## Gabon 1
## Gambia, The 1
## Georgia 1
## Germany 3
## Ghana 2
## Greece 4
## Grenada 5
## Guatemala 1
## Guinea 2
## Guinea-Bissau 2
## Guyana 1
## Haiti 2
## Honduras 5
## Hong Kong SAR, China 4
## Hungary 4
## Iceland 3
## India 5
## Indonesia 1
## Iran, Islamic Rep. 5
## Iraq 5
## Ireland 4
## Israel 3
## Italy 4
## Jamaica 1
## Japan 3
## Jordan 5
## Kazakhstan 1
## Kenya 2
## Kiribati 1
## Korea, Dem. People’s Rep. 1
## Korea, Rep. 3
## Kosovo 1
## Kuwait 4
## Kyrgyz Republic 1
## Lao PDR 2
## Lebanon 5
## Lesotho 2
## Liberia 2
## Libya 1
## Lithuania 1
## Luxembourg 4
## Macao SAR, China 4
## Madagascar 2
## Malawi 2
## Malaysia 1
## Maldives 1
## Mali 2
## Malta 4
## Mauritania 2
## Mauritius 1
## Mexico 5
## Moldova 1
## Mongolia 1
## Montenegro 1
## Morocco 5
## Mozambique 2
## Myanmar 1
## Namibia 5
## Nauru 1
## Nepal 2
## Netherlands 3
## New Zealand 4
## Nicaragua 1
## Niger 2
## Nigeria 2
## Norway 3
## Oman 1
## Pakistan 5
## Palau 1
## Panama 5
## Paraguay 5
## Peru 5
## Philippines 1
## Poland 1
## Portugal 4
## Puerto Rico 1
## Qatar 4
## Romania 4
## Russian Federation 1
## Rwanda 2
## Samoa 1
## Sao Tome and Principe 1
## Saudi Arabia 5
## Senegal 2
## Serbia 1
## Sierra Leone 2
## Singapore 4
## Slovenia 4
## Somalia 2
## South Africa 5
## South Asia 3
## South Sudan 2
## Spain 4
## Sri Lanka 1
## Sub-Saharan Africa 2
## Sudan 2
## Suriname 5
## Sweden 3
## Switzerland 3
## Syrian Arab Republic 5
## Tajikistan 1
## Tanzania 2
## Thailand 5
## Timor-Leste 2
## Togo 2
## Tonga 1
## Trinidad and Tobago 1
## Tunisia 1
## Turkey 5
## Turkmenistan 1
## Tuvalu 1
## Uganda 2
## Ukraine 1
## United Arab Emirates 5
## United Kingdom 4
## United States 3
## Uruguay 5
## Uzbekistan 1
## Vanuatu 1
## Venezuela, RB 5
## Vietnam 1
## Yemen, Rep. 2
## Zambia 2
## Zimbabwe 2
names(MAPA)='cluster'
MAPA$NAME=row.names(MAPA)
head(MAPA)
## cluster NAME
## Afghanistan 1 Afghanistan
## Albania 1 Albania
## Algeria 1 Algeria
## Angola 2 Angola
## Antigua and Barbuda 5 Antigua and Barbuda
## Argentina 5 Argentina
#Para crear el objeto final:
mapamundoF=merge(mapamundo,MAPA)
#Colores:
myColors=rainbow(5) #Numero de grupos
plot(mapamundoF,col='grey',border=NA)
plot(mapamundoF,col=myColors[mapamundoF$cluster],main='Grupos',border=NA,add=T)
library(leaflet)
c1=mapamundoF[!is.na(mapamundoF$cluster) & mapamundoF$cluster==1,]
c2=mapamundoF[!is.na(mapamundoF$cluster) & mapamundoF$cluster==2,]
c3=mapamundoF[!is.na(mapamundoF$cluster) & mapamundoF$cluster==3,]
c4=mapamundoF[!is.na(mapamundoF$cluster) & mapamundoF$cluster==4,]
c5=mapamundoF[!is.na(mapamundoF$cluster) & mapamundoF$cluster==5,]
title="Clusters"
# base Layer
base= leaflet() %>% addProviderTiles("CartoDB.Positron")
layer1= base %>%
addPolygons(data=c1,color='darkmagenta',fillOpacity = 1,stroke = F,
group = "1")
layer_12= layer1%>%addPolygons(data=c2,color="steelblue1",fillOpacity = 1,stroke = F,
group = "2")
layer_123= layer_12%>%addPolygons(data=c3,color="blue",fillOpacity = 1,stroke = F,
group = "3")
layer_1234= layer_123%>%addPolygons(data=c4,color="red",fillOpacity = 1,stroke = F,
group = "4")
layer_12345= layer_1234%>%addPolygons(data=c5,color="skyblue",fillOpacity = 1,stroke = F,
group = "5")
layer_12345%>% addLayersControl(
overlayGroups = c("1", "2","3","4","5"),
options = layersControlOptions(collapsed = FALSE))
Usaremos la regresión beta debido a que la variable dependiente (prevalencia de VIH en mujeres) se encuntra en proporción (0 a 1). Me interesa saber en que medida las variables de mis hipotesis explican la prevalencia del VIH en el mundo. Se usaran los analisis factoriales realizado en el PRYAP 1. EMPODERAMIENTO 2. DENSIDAD 3. MODERNIZACION 4. SALUD Junto con las variables independientes de GINI(desigualdad), Migración y Acceso a metodos anticonceptivos #### Análisis Factorial 1 - Empoderamiento Usaremos el analisis facorial de empoderamiento que contiene población activa de mujeres y fuerza laboral de mujeres
Act1FLM1=merge(DataAct,DataFLM,all.x=T,all.y=T)
row.names(Act1FLM1) = Act1FLM1$Pais
Act1FLM1$Pais = NULL
Act1FLM1[is.na(Act1FLM1$PoblacionActiva), "PoblacionActiva"]=mean(Act1FLM1$PoblacionActiva, na.rm=T)
Act1FLM1[is.na(Act1FLM1$FLM), "FLM"]=mean(Act1FLM1$FLM, na.rm=T)
Act1FLM1=as.data.frame(scale(Act1FLM1[,c(1,2)]))
head(Act1FLM1)
## PoblacionActiva FLM
## Afghanistan -0.43930039 0.00000000
## Albania -0.13370714 -1.37188100
## Algeria -2.46687804 0.00000000
## Angola 1.64499686 0.96623135
## Arab World -2.02072269 -1.96774987
## Argentina -0.04140391 0.05063512
library(psych)
pearson1 = cor(Act1FLM1) #sacar la correlación de los puntajes estandarizadas
cor.plot(pearson1,
numbers=T,
upper=FALSE,
main = "Correlation",
show.legend = FALSE) #verlo en un gráfico
La matriz de correlacion es diferente de la matriz de identidad.
KMO(Act1FLM1) #nos indica que mientras más cercano a uno hay una división subyacente, a partir de 0.7. Que tan buena idea es juntarlos en un indice. ver el Overall MSA(más cercano a 1)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = Act1FLM1)
## Overall MSA = 0.5
## MSA for each item =
## PoblacionActiva FLM
## 0.5 0.5
fa.parallel(pearson1, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(Act1FLM1)) #cuantos indices deberia formar
## Parallel analysis suggests that the number of factors = 1 and the number of components = NA
Debo formar 1 solo factor
Act1FLM1 = fa(Act1FLM1,
nfactors=1,
rotate="varimax") #codigo para el analisis factorial solo cambiar la data y el numero de factores
Act1FLM1$loadings
##
## Loadings:
## MR1
## PoblacionActiva 0.887
## FLM 0.887
##
## MR1
## SS loadings 1.574
## Proportion Var 0.787
Ha recogido el 78.7% de la informacion de mis variables El analisis factorial sale significante Le ponemos el nombre de empoderamiento por que engloba las variables de ppoblación activa y fuerza laboral de las mujeres.
Act1FLM1$scores
## MR1
## Afghanistan -0.218081911
## Albania -0.747419191
## Algeria -1.224632385
## Angola 1.296292143
## Arab World -1.979997621
## Argentina 0.004582650
## Armenia -0.310238745
## Aruba 0.367840847
## Australia 0.498514225
## Austria 0.105783795
## Azerbaijan 0.302854548
## Bahamas, The 0.623402726
## Bahrain -0.853641697
## Bangladesh -1.472732756
## Barbados 0.960750286
## Belarus 0.329622731
## Belgium -0.306988194
## Belize -0.867062954
## Benin 1.580277249
## Bhutan 0.567385718
## Bolivia 0.743099218
## Bosnia and Herzegovina -1.034565215
## Botswana 0.336834077
## Brazil 0.394759215
## Brunei Darussalam 0.195202744
## Bulgaria -0.243377536
## Burkina Faso 1.389544683
## Burundi 1.045368902
## Cabo Verde 0.136991681
## Cambodia 1.808782549
## Cameroon 1.760772259
## Canada 0.819332764
## Caribbean small states 0.072862091
## Cayman Islands 1.053765461
## Central African Republic 0.509861315
## Central Europe and the Baltics -0.125440772
## Chad 0.448841779
## Channel Islands 0.001251200
## Chile -0.593441335
## China 0.546450719
## Colombia 0.227261289
## Comoros -1.114769780
## Congo, Dem. Rep. 1.415986742
## Congo, Rep. 1.166573364
## Costa Rica -0.397352481
## Cote d'Ivoire -0.061868183
## Croatia -0.336865361
## Cuba -0.959734638
## Cyprus 0.310985908
## Czech Republic 0.069977696
## Denmark 0.739197542
## Djibouti -0.037241149
## Dominican Republic -0.655151160
## Early-demographic dividend -0.865927088
## East Asia & Pacific 0.386330446
## East Asia & Pacific (excluding high income) 0.442014163
## East Asia & Pacific (IDA & IBRD countries) 0.436908551
## Ecuador 0.176081095
## Egypt, Arab Rep. -2.005033677
## El Salvador -0.264923711
## Equatorial Guinea 0.060289066
## Eritrea 0.744175438
## Estonia 0.277800750
## Eswatini -0.498152426
## Ethiopia 1.679320454
## Euro area -0.106349196
## Europe & Central Asia -0.006807899
## Europe & Central Asia (excluding high income) -0.001337942
## Europe & Central Asia (IDA & IBRD countries) -0.019361503
## European Union -0.039837413
## Fiji -0.946866807
## Finland 0.515624322
## Fragile and conflict affected situations -0.034553476
## France 0.052207623
## French Polynesia -0.151777904
## Gabon -0.271022288
## Gambia, The -0.054741891
## Georgia 0.411265626
## Germany 0.092597943
## Ghana 1.324422734
## Greece -0.488210709
## Guam 0.340044186
## Guatemala -0.378624796
## Guinea 0.416189510
## Guinea-Bissau 0.491520630
## Guyana -0.513258095
## Haiti 0.195356957
## Heavily indebted poor countries (HIPC) 0.485561463
## High income 0.149685853
## Honduras -0.589130873
## Hong Kong SAR, China 0.171289897
## Hungary -0.456806438
## IBRD only -0.023631135
## Iceland 1.693784620
## IDA & IBRD total -0.018782865
## IDA blend -0.806941564
## IDA only 0.161754091
## IDA total 0.001778396
## India -1.185765411
## Indonesia -0.162841980
## Iran, Islamic Rep. -2.112360416
## Iraq -2.536029376
## Ireland 0.238920337
## Isle of Man 0.256001551
## Israel 0.377123027
## Italy -0.782635384
## Jamaica 0.421407379
## Japan -0.072704909
## Jordan -2.490151045
## Kazakhstan 1.027408228
## Kenya 0.735505219
## Kiribati -0.985310951
## Korea, Dem. People’s Rep. 0.830878402
## Korea, Rep. 0.034976626
## Kosovo -0.698268280
## Kuwait 0.046047582
## Kyrgyz Republic 0.300847727
## Lao PDR 1.999875482
## Late-demographic dividend 0.388485135
## Latin America & Caribbean 0.041142445
## Latin America & Caribbean (excluding high income) 0.075280389
## Latin America & the Caribbean (IDA & IBRD countries) 0.065569377
## Latvia 0.128623266
## Least developed countries: UN classification 0.216709160
## Lebanon -1.946961775
## Lesotho -0.137693307
## Liberia 0.765510910
## Libya -0.941884570
## Liechtenstein 0.141807689
## Lithuania 0.134496532
## Low & middle income -0.014293141
## Low income 0.508704767
## Lower middle income -0.818704121
## Luxembourg -0.227072385
## Macao SAR, China 0.539375369
## Madagascar 2.273801315
## Malawi 1.975846557
## Malaysia -0.280719425
## Maldives -0.319897128
## Mali 0.730988288
## Malta -1.298600132
## Mauritania -0.703685818
## Mauritius -0.575270084
## Mexico -0.573230839
## Middle East & North Africa -1.975443501
## Middle East & North Africa (excluding high income) -2.028850299
## Middle East & North Africa (IDA & IBRD countries) -2.025291777
## Middle income -0.060565269
## Moldova -0.238247760
## Mongolia 0.432687495
## Montenegro -0.414569055
## Morocco -1.568033163
## Mozambique 2.542142687
## Myanmar 0.199796113
## Namibia -0.249277877
## Nepal 2.538850436
## Netherlands 0.521080833
## New Caledonia 0.334361949
## New Zealand 0.725181542
## Nicaragua -0.361433382
## Niger 0.251317114
## Nigeria -0.091427247
## North America 0.648117672
## North Macedonia -0.468344263
## Northern Mariana Islands 1.125439692
## Norway 1.054652072
## OECD members 0.039050741
## Oman -1.671541746
## Other small states -0.024994858
## Pacific island small states -0.169651496
## Pakistan -2.086227681
## Palau 0.321096783
## Panama -0.182764593
## Papua New Guinea 0.305338522
## Paraguay 0.319355648
## Peru 0.900286201
## Philippines -0.147202953
## Poland -0.151082728
## Portugal 0.382453534
## Post-demographic dividend 0.202798162
## Pre-demographic dividend 0.260775226
## Puerto Rico -0.831745121
## Qatar -0.272388758
## Romania -0.120953027
## Russian Federation 0.597349047
## Rwanda 2.350623422
## Samoa -1.374880549
## San Marino 0.172208561
## Sao Tome and Principe -1.019860577
## Saudi Arabia -2.129877574
## Senegal -1.054152738
## Serbia -0.308830749
## Sierra Leone 1.023502680
## Singapore 0.186636237
## Slovak Republic 0.138050914
## Slovenia 0.203810232
## Small states -0.010767330
## Solomon Islands 0.444523960
## Somalia -1.074265326
## South Africa -0.416041508
## South Asia -1.199783982
## South Asia (IDA & IBRD) -1.199783982
## South Sudan 0.664178656
## Spain -0.221935582
## Sri Lanka -0.897814432
## St. Lucia 0.649728560
## St. Vincent and the Grenadines 0.131420593
## Sub-Saharan Africa 0.379954847
## Sub-Saharan Africa (excluding high income) 0.379954847
## Sub-Saharan Africa (IDA & IBRD countries) 0.379954847
## Sudan -0.843744066
## Suriname -0.436831030
## Sweden 0.641036800
## Switzerland 0.680393591
## Syrian Arab Republic -2.245588328
## Tajikistan -0.674952343
## Tanzania 2.512556173
## Thailand 1.073992684
## Timor-Leste -0.395653700
## Togo 2.104439749
## Tonga -0.658657852
## Trinidad and Tobago 0.152339251
## Tunisia -1.785198120
## Turkey -1.729348682
## Turkmenistan 0.063497873
## Uganda 0.677071249
## Ukraine 0.250958153
## United Arab Emirates -0.805208024
## United Kingdom 0.368314436
## United States 0.628777497
## Upper middle income 0.246886943
## Uruguay 0.147303509
## Uzbekistan -0.351101194
## Vanuatu 0.365019405
## Venezuela, RB -0.001698803
## Vietnam 1.399045475
## Virgin Islands (U.S.) 0.282411076
## West Bank and Gaza -2.388327075
## World -0.003717115
## Yemen, Rep. -2.505323817
## Zambia 0.760219351
## Zimbabwe 1.866854539
scores1=as.data.frame(Act1FLM1$scores)
names(scores1) = c("Empoderamiento")
DataEmpoderamiento1=scores1
head(DataEmpoderamiento1)
## Empoderamiento
## Afghanistan -0.21808191
## Albania -0.74741919
## Algeria -1.22463238
## Angola 1.29629214
## Arab World -1.97999762
## Argentina 0.00458265
#para el merge final xd
DataEmpoderamiento1$Pais = row.names(DataEmpoderamiento1)
densidad1x= merge(EDU,ENER,all.x=T,all.y=T)
densidad1x=merge(densidad1x,DataTugurios,all.x=T,all.y=T)
row.names(densidad1x) = densidad1x$Pais
#imputar
densidad1x[is.na(densidad1x$BarriosTugurios), "BarriosTugurios"]=mean(densidad1x$BarriosTugurios, na.rm=T)
densidad1x[is.na(densidad1x$EDU), "EDU"]=mean(densidad1x$EDU, na.rm=T)
densidad1x[is.na(densidad1x$ENER), "ENER"]=mean(densidad1x$ENER, na.rm=T)
densidad1x=as.data.frame(scale(densidad1x[,c(2:4)]))
head(densidad1x)
## EDU ENER BarriosTugurios
## Afghanistan 0.0000000 -1.7200939 0.000000
## Albania 0.0000000 0.7537297 0.000000
## Algeria -0.2208697 0.7155539 0.000000
## Andorra 0.0000000 0.7537297 0.000000
## Angola 0.0000000 -1.5043070 2.464697
## Antigua and Barbuda 0.0000000 0.4998588 -2.666390
library(psych)
#test de bartlett
cortest.bartlett(densidad1x, n=nrow(densidad1x))
## R was not square, finding R from data
## $chisq
## [1] 223.2036
##
## $p.value
## [1] 4.075464e-48
##
## $df
## [1] 3
#correlacion de una data
pearson = cor(densidad1x)
#matriz de correlación
cor.plot(pearson,
numbers=T,
upper=FALSE,
main = "Correlation",
show.legend = FALSE)
La matriz de correlacion no es igual que la matriz de identidad, es correcto hacer analisis factorial
##el KMO es un estimador, admite una representación gráfica por medio de una función escalonada.
#que tan apropiado es que se junten las variables, más cercano a 1 mejor
KMO(densidad1x)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = densidad1x)
## Overall MSA = 0.7
## MSA for each item =
## EDU ENER BarriosTugurios
## 0.72 0.66 0.71
EL MSA es 0.7 es apropiado juntar las variables
##ver en cuantas dimensiones se separara, segun como este la pendiente pronunciada
fa.parallel(pearson, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(densidad1x))
## Parallel analysis suggests that the number of factors = 1 and the number of components = NA
Me sugiere 1 factor
#sustenta que las variables están correlacionadas; mira comose juntan mis variables y el puntaje alternativo que me da
#El AF compara variable con variable
#crea el objeto para el factorial
densidad1x_f <- fa(densidad1x, #de donde esta la data
nfactors=1, #numero de dimensiones
rotate="varimax"
)
densidad1x_f$loadings
##
## Loadings:
## MR1
## EDU 0.699
## ENER 0.818
## BarriosTugurios -0.707
##
## MR1
## SS loadings 1.658
## Proportion Var 0.553
Ha recogido el 55.3% de la informacion de mis variables
#haces una data con tus scores (los MR del AF)
densidad1x_plus=as.data.frame(densidad1x_f$scores) #los scores ya estaban creados cuando hiciste AF
#le ponemos nombre a nuestros indices
names(densidad1x_plus)=c("Densidad")
densidad1x_plus$Pais = row.names(densidad1x_plus)
head(densidad1x_plus)
## Densidad Pais
## Afghanistan -0.8544831 Afghanistan
## Albania 0.3744268 Albania
## Algeria 0.2947016 Algeria
## Andorra 0.3744268 Andorra
## Angola -1.4460276 Angola
## Antigua and Barbuda 1.0042322 Antigua and Barbuda
Se usara el analisis factorial de Modernización que enbloba: Gasto en Desarrollo y Banda Ancha
moder1=merge(GAST,ban,all.x=T,all.y=T)
row.names(moder1) = moder1$Pais
#densidad1x$Pais = NULL
#imputar
moder1[is.na(moder1$GAST), "GAST"]=mean(moder1$GAST, na.rm=T)
moder1[is.na(moder1$ban), "ban"]=mean(moder1$ban, na.rm=T)
moder1=as.data.frame(scale(moder1[,c(2,3)])) #estandarizamos valores
head(moder1)
## GAST ban
## Afghanistan 0.0000000 -0.6376199
## Albania -1.1200694 -0.6126922
## Algeria -1.0384339 -0.5812473
## American Samoa -0.7765789 0.0000000
## Andorra 0.0000000 1.3377299
## Angola 0.0000000 -0.6309753
library(psych)
#test de bartlett
cortest.bartlett(moder1, n=nrow(infox1))
## R was not square, finding R from data
## $chisq
## [1] 111.3476
##
## $p.value
## [1] 4.965349e-26
##
## $df
## [1] 1
#correlacion de una data
pearson = cor(moder1)
#matriz de correlación
cor.plot(pearson,
numbers=T,
upper=FALSE,
main = "Correlation",
show.legend = FALSE)
Es correcto hacer un analisis factorial porque la matriz de correlacion y la matriz de identidad son diferentes
##el KMO es un estimador, admite una representación gráfica por medio de una función escalonada.
#que tan apropiado es que se junten las avriables, más cercano a 1 mejor
KMO(moder1)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = moder1)
## Overall MSA = 0.5
## MSA for each item =
## GAST ban
## 0.5 0.5
El resultado es 0.5, no es tan fuerte pero se puede hacer un analisis factorial
##ver en cuantas dimensiones se separara, segun como este la pendiente pronunciada
fa.parallel(pearson, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(moder1))
## Parallel analysis suggests that the number of factors = 1 and the number of components = NA
sugiere 1 factor
#sustenta que las variables están correlacionadas; mira comose juntan mis variables y el puntaje alternativo que me da
#El AF compara variable con variable
#crea el objeto para el factorial
moder1_f <- fa(moder1, #de donde esta la data
nfactors=1, #numero de dimensiones
rotate="varimax"
)
#la varianza acumulada significa que se ha recogido el __% de la informacion de tu set de variables
#puedes ver que variables pertenecen a un mismo grupo
moder1_f$loadings
##
## Loadings:
## MR1
## GAST 0.787
## ban 0.787
##
## MR1
## SS loadings 1.24
## Proportion Var 0.62
Ha recogido el 62% de la informacion de las variables
#haces una data con tus scores (los MR del AF)
moder1_plus=as.data.frame(moder1_f$scores) #los scores ya estaban creados cuando hiciste AF
#le ponemos nombre a nuestros indices
names(moder1_plus)=c("Modernizacion")
moder1_plus$Pais = row.names(moder1_plus)
head(moder1_plus)
## Modernizacion Pais
## Afghanistan -0.3099156 Afghanistan
## Albania -0.8422099 Albania
## Algeria -0.7872471 Algeria
## American Samoa -0.3774567 American Samoa
## Andorra 0.6502045 Andorra
## Angola -0.3066859 Angola
Se usara el analisis factorial de Salud que engloba: esperanza de vida de las mujeres y cobertura a retrovirales
salud1=merge(antiRetrov,EspVida,all.x=T,all.y=T)
row.names(salud1) = salud1$Pais
#densidad1x$Pais = NULL
#imputar
salud1[is.na(salud1$CobARet), "CobARet"]=mean(salud1$CobARet, na.rm=T)
salud1[is.na(salud1$VidaM), "VidaM"]=mean(salud1$VidaM, na.rm=T)
salud1=as.data.frame(scale(salud1[,c(2,3)])) #estandarizamos valores
head(salud1)
## CobARet VidaM
## Afghanistan 0.00000000 -1.133702486
## Albania -0.64026360 0.739051823
## Algeria -0.05502504 0.326755526
## Angola -0.97468563 -1.573206359
## Antigua and Barbuda 0.00000000 0.611277737
## Arab World 0.00000000 -0.009727659
library(psych)
#test de bartlett
cortest.bartlett(salud1, n=nrow(salud1))
## R was not square, finding R from data
## $chisq
## [1] 65.10916
##
## $p.value
## [1] 7.086207e-16
##
## $df
## [1] 1
#correlacion de una data
pearson = cor(salud1)
#matriz de correlación
cor.plot(pearson,
numbers=T,
upper=FALSE,
main = "Correlation",
show.legend = FALSE)
Es correcto hacer un analisis factorial porque la matriz de correlacion y la matriz de identidad son diferentes
##el KMO es un estimador, admite una representación gráfica por medio de una función escalonada.
#que tan apropiado es que se junten las avriables, más cercano a 1 mejor
KMO(salud1)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = salud1)
## Overall MSA = 0.5
## MSA for each item =
## CobARet VidaM
## 0.5 0.5
El resultado es 0.5, no es tan fuerte pero se puede hacer un analisis factorial
##ver en cuantas dimensiones se separara, segun como este la pendiente pronunciada
fa.parallel(pearson, fm="pa", fa="fa", main = "Scree Plot",n.obs = nrow(salud1))
## Parallel analysis suggests that the number of factors = 1 and the number of components = NA
sugiere 1 factor
#sustenta que las variables están correlacionadas; mira comose juntan mis variables y el puntaje alternativo que me da
#El AF compara variable con variable
#crea el objeto para el factorial
salud1_f <- fa(salud1, #de donde esta la data
nfactors=1, #numero de dimensiones
rotate="varimax"
)
#la varianza acumulada significa que se ha recogido el __% de la informacion de tu set de variables
#puedes ver que variables pertenecen a un mismo grupo
salud1_f$loadings
##
## Loadings:
## MR1
## CobARet 0.695
## VidaM 0.695
##
## MR1
## SS loadings 0.965
## Proportion Var 0.483
Ha recogido el 48% de la informacion de las variables
#haces una data con tus scores (los MR del AF)
salud1_plus=as.data.frame(salud1_f$scores) #los scores ya estaban creados cuando hiciste AF
#le ponemos nombre a nuestros indices
names(salud1_plus)=c("Salud")
salud1_plus$Pais = row.names(salud1_plus)
head(salud1_plus)
## Salud Pais
## Afghanistan -0.531223568 Afghanistan
## Albania 0.046289599 Albania
## Algeria 0.127325856 Algeria
## Angola -1.193876075 Angola
## Antigua and Barbuda 0.286428886 Antigua and Barbuda
## Arab World -0.004558128 Arab World
TOTAL9= merge(DataEmpoderamiento1, DataMetodos, all.x=T,all.y=T)
TOTAL9 = merge(TOTAL9, densidad1x_plus, all.x=T,all.y=T)
TOTAL9 = merge(TOTAL9, moder1_plus, all.x=T,all.y=T)
TOTAL9 = merge(TOTAL9, salud1_plus, all.x=T,all.y=T)
TOTAL9 = merge(TOTAL9, DataGini, all.x=T,all.y=T)
regresion = merge(TOTAL9, migra, all.x=T,all.y=T)
regresion=regresion[-grep("small|San|high|Pacific|French|Caribbean|Early|Late|Island|Small|West|Sint|Other|OECD|North|World|Euro|Latin|Upper|High|Heavily|IBR|IDA|Least|Low|Middle|East|Central|Fragile|Post|Pre",regresion$Pais),] #buscar y eliminar
row.names(regresion)=NULL
regresion=regresion[-c(4,5,10,14,22,28,42,44,52,15,28,47,70,72,74,89,104,109,122,124,134,144,160,163,171:173),] #eliminar
row.names(regresion)=NULL
regresion1 = merge(regresion, DataVIH,all.y=T) #data para la regresion
regresion1=regresion1[-grep("small|San|high|Pacific|French|Caribbean|Early|Late|Island|Small|West|Sint|Other|OECD|North|World|Euro|Latin|Upper|High|Heavily|IBR|IDA|Least|Low|Middle|East|Central|Fragile|Post|Pre",regresion1$Pais),] #buscar y eliminar
row.names(regresion1)=NULL
regresion1=regresion1[-c(9,10,30,32,98,111),] #eliminar
row.names(regresion1)=NULL
regresion1 = merge(regresion1,GDP ,all.x=T)
regresion1 = merge(regresion1,ODA ,all.x=T) #data para la regresion
regresion1[is.na(regresion1$Metodos), "Metodos"]=mean(regresion1$Metodos, na.rm=T)
regresion1[is.na(regresion1$Empoderamiento), "Empoderamiento"]=mean(regresion1$Empoderamiento, na.rm=T)
regresion1[is.na(regresion1$Densidad), "Densidad"]=mean(regresion1$Densidad, na.rm=T)
regresion1[is.na(regresion1$GDP), "GDP"]=mean(regresion1$GDP, na.rm=T)
regresion1[is.na(regresion1$ODA), "ODA"]=mean(regresion1$ODA, na.rm=T)
regresion1[is.na(regresion1$Salud), "Salud"]=mean(regresion1$VidaM, na.rm=T)
## Warning in mean.default(regresion1$VidaM, na.rm = T): argument is not
## numeric or logical: returning NA
regresion1[is.na(regresion1$Modernizacion), "Modernizacion"]=mean(regresion1$Modernizacion, na.rm=T)
regresion1[is.na(regresion1$Gini), "Gini"]=mean(regresion1$Gini, na.rm=T)
regresion1[is.na(regresion1$Migracion), "Migracion"]=mean(regresion1$Migracion, na.rm=T)
Se decidio no imputar la data de lo VIH, ya que es la variable dependiente y por ende nuestra variable de interés ### Regresión Beta
library(betareg)
#un subset con la VD y las VI
betaData=regresion1[,c(2:11)]
betaData$VIH= betaData$VIH/100
BETmodelo=betareg(VIH~., #vd
data=betaData)
#mira el p-value y la dirección del efecto
summary(BETmodelo)
##
## Call:
## betareg(formula = VIH ~ ., data = betaData)
##
## Standardized weighted residuals 2:
## Min 1Q Median 3Q Max
## -1.8442 -0.4253 -0.0630 0.3584 2.5961
##
## Coefficients (mean model with logit link):
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -5.178e+00 5.292e-01 -9.785 < 2e-16 ***
## Empoderamiento 1.338e-01 9.252e-02 1.446 0.14815
## Metodos 2.651e-04 5.980e-03 0.044 0.96464
## Densidad -8.702e-02 1.509e-01 -0.576 0.56428
## Modernizacion 1.845e-01 1.737e-01 1.062 0.28841
## Salud -4.600e-01 1.403e-01 -3.278 0.00105 **
## Gini 1.700e-02 1.123e-02 1.514 0.12999
## Migracion 1.103e-07 8.327e-08 1.324 0.18539
## GDP 5.034e-14 1.943e-13 0.259 0.79556
## ODA -1.755e-02 1.514e-02 -1.159 0.24632
##
## Phi coefficients (precision model with identity link):
## Estimate Std. Error z value Pr(>|z|)
## (phi) 53.162 8.357 6.361 2e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Type of estimator: ML (maximum likelihood)
## Log-likelihood: 491.9 on 11 Df
## Pseudo R-squared: 0.4619
## Number of iterations: 66 (BFGS) + 11 (Fisher scoring)
El indice que explica la variable dependiente es el indice de salud #### Margins
library(margins)
BETAmarg = margins(BETmodelo)
Resultado=summary(BETAmarg)
Resultado
## factor AME SE z p lower upper
## Densidad -0.0010 0.0018 -0.5748 0.5654 -0.0044 0.0024
## Empoderamiento 0.0015 0.0011 1.4331 0.1518 -0.0006 0.0037
## GDP 0.0000 0.0000 8.7013 0.0000 0.0000 0.0000
## Gini 0.0002 0.0001 1.4860 0.1373 -0.0001 0.0005
## Metodos 0.0000 0.0001 0.0443 0.9646 -0.0001 0.0001
## Migracion 0.0000 0.0000 1.3239 0.1855 -0.0000 0.0000
## Modernizacion 0.0021 0.0020 1.0428 0.2970 -0.0019 0.0061
## ODA -0.0002 0.0002 -1.1488 0.2506 -0.0005 0.0001
## Salud -0.0053 0.0017 -3.0999 0.0019 -0.0087 -0.0020
Por cada punto adicional en el indice de salud (vi) la probabilidad de prevalencia del VIH en mujeres (vd) disminuye 0.053%
#sale sus limites de su error
bet=summary(BETAmarg)
library(ggplot2)
ggplot(bet,aes(x=factor, y=AME)) + geom_point() + geom_errorbar(aes(ymin=lower, ymax=upper))
Los limites de confianza de la mayor cantidad de variables pasan por el cero, lo que hace que no sean significativas. Sin embargo, la variable de salud no pasa por el cero.