#' Modelo de Empleos-Alumnos
#'
#' Estima alumnos en base a crecimientos por industria de la economÃa
#'
#' @param s_ind11 Personal ocupado inicial en industria 11
#' @param s_ind53 Personal ocupado inicial en industria 53
#' @param s_ind21 Personal ocupado inicial en industria 21
#' @param s_ind54 Personal ocupado inicial en industria 54
#' @param s_ind22 Personal ocupado inicial en industria 22
#' @param s_ind55 Personal ocupado inicial en industria 55
#' @param s_ind43 Personal ocupado inicial en industria 43
#' @param s_ind56 Personal ocupado inicial en industria 56
#' @param s_ind23 Personal ocupado inicial en industria 23
#' @param s_ind46 Personal ocupado inicial en industria 46
#' @param s_ind52 Personal ocupado inicial en industria 52
#' @param s_ind51 Personal ocupado inicial en industria 51
#' @param s_ind71 Personal ocupado inicial en industria 71
#' @param s_indSC Personal ocupado inicial en industria SC
#' @param s_ind72 Personal ocupado inicial en industria 72
#' @param s_ind81 Personal ocupado inicial en industria 81
#' @param s_ind61 Personal ocupado inicial en industria 61
#' @param s_ind62 Personal ocupado inicial en industria 62
#' @param s_ind31 Personal ocupado inicial en industria 31
#' @param c_ind11 Porcentaje de crecimiento lineal de industria 11
#' @param c_ind53 Porcentaje de crecimiento lineal de industria 53,
#' @param c_ind21 Porcentaje de crecimiento lineal de industria 21,
#' @param c_ind54 Porcentaje de crecimiento lineal de industria 54,
#' @param c_ind22 Porcentaje de crecimiento lineal de industria 22,
#' @param c_ind55 Porcentaje de crecimiento lineal de industria 55,
#' @param c_ind43 Porcentaje de crecimiento lineal de industria 43,
#' @param c_ind56 Porcentaje de crecimiento lineal de industria 56,
#' @param c_ind23 Porcentaje de crecimiento lineal de industria 23,
#' @param c_ind46 Porcentaje de crecimiento lineal de industria 46,
#' @param c_ind52 Porcentaje de crecimiento lineal de industria 52,
#' @param c_ind51 Porcentaje de crecimiento lineal de industria 51
#' @param c_ind71 Porcentaje de crecimiento lineal de industria 71
#' @param c_indSC Porcentaje de crecimiento lineal de industria SC
#' @param c_ind72 Porcentaje de crecimiento lineal de industria 72
#' @param c_ind81 Porcentaje de crecimiento lineal de industria 81
#' @param c_ind61 Porcentaje de crecimiento lineal de industria 61
#' @param c_ind62 Porcentaje de crecimiento lineal de industria 62
#' @param c_ind31 Porcentaje de crecimiento lineal de industria 31
#' @param d_inxgue Cambio en ingreso por unidad economica en industria 55
#' @param tpt Total previo de trabajadores
#' @param dif_hh diferencial en indice herfindahl
#' @param p_joven porcentaje (en decimal) de personas jovenes en el municipio
#' @param zm 1 si es zona metropolitana
#' @param version version del modelo
#' @export
t_modelo_empleos <- function(s_ind11, s_ind53, s_ind21, s_ind54,
s_ind22, s_ind55, s_ind43, s_ind56,
s_ind23, s_ind46, s_ind52, s_ind51,
s_ind71, s_indSC, s_ind72, s_ind81,
s_ind61, s_ind62, s_ind31,
c_ind11, c_ind53, c_ind21, c_ind54,
c_ind22, c_ind55, c_ind43, c_ind56,
c_ind23, c_ind46, c_ind52, c_ind51,
c_ind71, c_indSC, c_ind72, c_ind81,
c_ind61, c_ind62, c_ind31,
d_ingxue_55,
tpt,
dif_hh,
p_joven,
zm,
version = 1
){
a_est <- s_ind11*(1 + c_ind11)+
s_ind53*(1 + c_ind53)+
s_ind21*(1 + c_ind21)+
s_ind54*(1 + c_ind54)+
s_ind22*(1 + c_ind22)+
s_ind55*(1 + c_ind55)+
s_ind43*(1 + c_ind43)+
s_ind56*(1 + c_ind56)+
s_ind23*(1 + c_ind23)+
s_ind46*(1 + c_ind46)+
s_ind52*(1 + c_ind52)+
s_ind51*(1 + c_ind51)+
s_ind71*(1 + c_ind71)+
s_indSC*(1 + c_indSC)+
s_ind72*(1 + c_ind72)+
s_ind81*(1 + c_ind81)+
s_ind61*(1 + c_ind61)+
s_ind31*(1 + c_ind31)
r <- a_est - tpt
if(version==1){
# prepa
s <- 6.921 + r*(1.398)+zm*(1.349)+p_joven*(-1.087)
}
if(version==2){
# profesional
s <- r*(3.5130)+zm*(1.452)+dif_hh*(2.104)+p_joven*(9.114)
}
if(version==3){
# posgrado
s <- r*(5.019)+zm*(4.0134)+d_ingxue_55*(5.151)+p_joven*(4.2133)
}
s
}
#' Modelo de Pesos de Crecimiento por Edad
#'
#' Usado en el modulo de demografia en el modelo de expansion.
#' El objeto de df_conapo debe seguir mismo formato detallado en ese documento.
#' @param df_conapo data.frame de conapo
#' @export
t_mod_edad_conapo <- function(df_conapo, version = 1){
if(version == 1){
pesos <- data.frame("RANGO_EDAD" = c("0-14", "15-29", "30-44", "45-64", "65+"),
"PESO" = c(2.155049, 3.708537,
2.155049, 1.200493,
0.001998)) %>%
mutate("PESO_REL" = PESO/9.221126)
d <- df_conapo %>%
inner_join(., pesos) %>%
mutate("POBPOND" = PESO_REL*POB) %>%
group_by(Y, LLAVEGEO) %>%
summarise("POB" = sum(POBPOND)) %>%
ungroup() %>%
group_by(LLAVEGEO) %>%
arrange(Y) %>%
mutate("DELTA" = diff(c(NA,POB)),
"CREC_PORCENTUAL" = ((POB/lag(POB,1))-1)) %>%
ungroup() %>%
dplyr::filter(Y != "2010") %>%
group_by(LLAVEGEO) %>%
summarise("C_TEORICO" = mean(CREC_PORCENTUAL))
d
}
}
#' Funcion para hacer zonas
#'
#' Toma un data.frame obtenido mediante t_datos_modelo (ver tse.sql) y retorna uno agrupado por zonas, de acuerdo a las reglas de agrupacion.
#' @param d data.frame
#' @param porCluster si TRUE, escala los datos por cluster en el que esta la zona. Si FALSE, escala en total.
#' @export
t_zonificar_expansion <- function(d, porCluster = FALSE){
if(porCluster){
# primero, tengo que asignarle un solo cluster a cada zona (aun y cuando comparta...)
realcluster <- d %>%
dplyr::group_by(ZONA_TOPAZ_ID, CLUSTER_ID) %>%
dplyr::summarise("P" = sum(POBLACION)) %>%
dplyr::arrange(-P) %>%
dplyr::slice(1) %>%
dplyr::ungroup() %>%
dplyr::select(-P)
names(realcluster)[2] <- "REAL_CLUSTER_ID"
d %<>% left_join(., realcluster)
#### --------
#### empezamos a filtrar, ya sabemos que solamente hay un cluster por cada zona,
#### basado en donde tiene mas poblacion.
#### --------
# la lista de los clusters
ccs <- unique(d[, 'REAL_CLUSTER_ID'])
# data frame de escalados total (cada loop genera un df_n, que se rbind con este)
df_nn <- NULL
# data frame de datos resumidos total (cada loop genera un df_n, que se rbind con este)
df_rr <- NULL
# empezamos el loop, filtrando por cada Cluster ID
for(i in 1:length(ccs)){
dtmp <- d %>% dplyr::filter(REAL_CLUSTER_ID == ccs[i])
# para catalogos...
llave_mun <- dtmp %>%
dplyr::group_by(ZONA_TOPAZ_ID, LLAVEGEO) %>%
dplyr::summarise("p_pxmun" = sum(POBLACION)) %>%
dplyr::arrange(-p_pxmun) %>%
dplyr::ungroup() %>%
dplyr::group_by(ZONA_TOPAZ_ID) %>%
dplyr::slice(1) %>%
dplyr::select(-p_pxmun)
llave_cluster <- dtmp %>%
dplyr::group_by(ZONA_TOPAZ_ID, CLUSTER_AGEB) %>%
dplyr::summarise("p_pxc" = sum(POBLACION)) %>%
dplyr::arrange(-p_pxc) %>%
dplyr::ungroup() %>%
dplyr::group_by(ZONA_TOPAZ_ID) %>%
dplyr::slice(1) %>%
dplyr::select(-p_pxc)
clusters_xmun <- dtmp %>%
dplyr::select(c(LLAVEGEO, CLUSTER)) %>%
unique(.)
mini_mercados <- dtmp %>%
dplyr::group_by(CLUSTER_AGEB) %>%
dplyr::summarise("POBMERCADO" = sum(POBLACION))
nombres_zonas <- dtmp %>%
dplyr::group_by(ZONA_TOPAZ_ID, ZONA) %>%
dplyr::summarise("n" = n()) %>%
dplyr::select(-n) %>%
unique(.)
catalogo <- llave_cluster %>%
left_join(., llave_mun) %>%
left_join(., clusters_xmun) %>%
left_join(., mini_mercados) %>%
left_join(., nombres_zonas)
### Quitamos los NA's, reemplazando por el promedio
da <- dtmp %>% mutate_if(is.numeric, function(x){t_imp_media(x, todo = TRUE)})
# calculamos y resumimos
dd <- t_condensar_agebs(da, fast = TRUE)
# algunos pisos y techos
dd <- dd %>%
dplyr::mutate("ESCOLARIDAD" = ifelse(ESCOLARIDAD>0.125, 0, ESCOLARIDAD))
# solamente las columnas numericas...
nums <- sapply(dd, is.numeric)
df_nums <- dd[, nums]
# el resto de columnas...
df_car <- dd[,!nums]
# escalamos todos los numericos...
df_scale <- scale(df_nums)
# quitamos NaN's (Cuando no hay varianza)
df_scale[is.nan(df_scale)] <- 0
# unimos los datos
df_n <- cbind.data.frame(df_car, df_scale)
# unimos el catalogo
df_n <- df_n %>%
left_join(., catalogo)
# exp
df_n <- df_n %>% dplyr::ungroup()
df_r <- dd %>% dplyr::ungroup() %>% left_join(., catalogo)
# unir al grande...
df_nn <- rbind.data.frame(df_n, df_nn)
df_rr <- rbind.data.frame(df_r, df_rr)
} # fin del loop
# lista, para exportar ambos
l <- list("escalados" = df_nn,
"resumidos" = df_rr)
}else{
# aqui **no** es por cluster (entonces, hacemos todo de un jalon...)
# primero, obtener llavegeos unicas y ageb-clusters unicos
llave_mun <- d %>%
dplyr::group_by(ZONA_TOPAZ_ID, LLAVEGEO) %>%
dplyr::summarise("p_pxmun" = sum(POBLACION)) %>%
dplyr::arrange(-p_pxmun) %>%
dplyr::ungroup() %>%
dplyr::group_by(ZONA_TOPAZ_ID) %>%
dplyr::slice(1) %>%
dplyr::select(-p_pxmun)
llave_cluster <- d %>%
dplyr::group_by(ZONA_TOPAZ_ID, CLUSTER_AGEB) %>%
dplyr::summarise("p_pxc" = sum(POBLACION)) %>%
dplyr::arrange(-p_pxc) %>%
dplyr::ungroup() %>%
dplyr::group_by(ZONA_TOPAZ_ID) %>%
dplyr::slice(1) %>%
dplyr::select(-p_pxc)
clusters_xmun <- d %>%
dplyr::select(c(LLAVEGEO, CLUSTER)) %>%
unique(.)
mini_mercados <- d %>%
dplyr::group_by(CLUSTER_AGEB) %>%
dplyr::summarise("POBMERCADO" = sum(POBLACION))
nombres_zonas <- d %>%
dplyr::group_by(ZONA_TOPAZ_ID, ZONA) %>%
dplyr::summarise("n" = n()) %>%
dplyr::select(-n) %>%
unique(.)
# hacemos un catalogo, para poner al final
catalogo <- llave_cluster %>%
left_join(., llave_mun) %>%
left_join(., clusters_xmun) %>%
left_join(., mini_mercados) %>%
left_join(., nombres_zonas)
### Quitamos los NA's, reemplazando por el promedio
da <- d %>% mutate_if(is.numeric, function(x){t_imp_media(x, todo = TRUE)})
# calculamos y resumimos
dd <- t_condensar_agebs(da, fast = TRUE)
# algunos pisos y techos
dd <- dd %>%
dplyr::mutate("ESCOLARIDAD" = ifelse(ESCOLARIDAD>0.125, 0, ESCOLARIDAD))
# solamente las columnas numericas...
nums <- sapply(dd, is.numeric)
df_nums <- dd[, nums]
# el resto de columnas...
df_car <- dd[,!nums]
# escalamos todos los numericos...
df_scale <- scale(df_nums)
# quitamos NaN's (Cuando no hay varianza)
df_scale[is.nan(df_scale)] <- 0
# unimos los datos
df_n <- cbind.data.frame(df_car, df_scale)
# unimos el catalogo
df_n <- df_n %>%
left_join(., catalogo)
# exp
df_n <- df_n %>% dplyr::ungroup()
df_r <- dd %>% dplyr::ungroup() %>% left_join(., catalogo)
# lista, para exportar ambos
l <- list("escalados" = df_n,
"resumidos" = df_r)
} # fin del else (no es por cluster)
# fin de todo. exportar l
l
}
#' Modelo de Expansion
#'
#' @param d data.frame "ancho" con variables que sean las mismas que pesos. Ver ejemplos en shiny.
#' @param w data.frame con ponderaciones por cada variable (se va unir con d)
#' @param tipo tipo de modelo, por lo pronto solamente por "puntos"
#' @param exportar exportar score general o subindices
#' @export
t_modeloexpansion <- function(d, w, tipo = "puntos", general = TRUE){
###########################################################
# las columnas que estan en d, deben estar en el archivo de excel (VariableDef o Diccionario)
# ojo: si se agregan o quitan columnas, debe de cambiarse tambien aqui
#
###########################################################
# Tipos de modelos
# 1- Por puntos usa un sistema de asignacion de puntos por cada lugar en la distribucion y cada
# indicador. Por ejemplo, el indicador x se divide en escala z. Este peso se multiplica por el peso de la variable.
# Es un "modelo" muy facil de entender.
###########################################################
# ++++++++++++++++++++++ MODELO 1 (puntos)
###########################################################
if(tipo == "puntos"){
wdf <- d %>% # primero, hacemos largo el d
reshape2::melt(id.vars = c("MACRO_ZONA", "ZONA_AGRUPADA",
"ZONA_TOPAZ_ID", "CLUSTER_AGEB",
"LLAVEGEO", "CLUSTER", "ZONA")) %>%
dplyr::left_join(., w) %>% # unimos con w
dplyr::mutate("SCORE" = value*peso) #obtenemos los pesos por simple multiplicacion
if(general){
wdf <- wdf %>%
dplyr::group_by(MACRO_ZONA, ZONA_AGRUPADA, ZONA_TOPAZ_ID,
CLUSTER_AGEB, LLAVEGEO, CLUSTER, ZONA) %>%
dplyr::summarise("SCORE" = sum(SCORE)) # sumamos todos los indicadores
wdf$SCORE <- as.vector(scale(x = wdf$SCORE)) # escalamos todos los scores
}else{
wdf <- wdf %>%
dplyr::group_by(MACRO_ZONA, ZONA_AGRUPADA, ZONA_TOPAZ_ID,
CLUSTER_AGEB, LLAVEGEO, CLUSTER, ZONA, sector) %>%
dplyr::summarise("SCORE" = sum(SCORE))
wdf$SCORE <- as.vector(scale(x = wdf$SCORE))
} # fin de else de general...
}else{
if(tipo == "arboles"){
# hacer si hay suficientes datos!
}else{stop("Seleccionar solamente arboles o puntos como tipo de modelo")}
}
# exportar
wdf
}
#' Condensa (resume) indicadores por Zona
#'
#' Implementa metodo rapido (un solo join) o lento pero mas exacto (10 digitos de milesimas) usando t_ppond.
#' @param d dataframe del modelo de expansion (ver shiny)
#' @fast si TRUE usa metodo rapido con left join
#' @export
t_condensar_agebs <- function(d, fast = TRUE){
if(fast){
dd <- d %>%
# columnas nuevas de diferencias absolutas
dplyr::mutate("DIF_GRAPOES" = 1/(abs(AM_GRAPROES-ESCOLARIDAD)^2),
"DIF_PERSXHOGAR" = 1/(abs(AM_PERSXHOGAR-CENS_PERSXHOGAR)^2),
"DIF_AUTOS" = 1/(abs(AM_AUTOS-CENS_AUTO)^2)) %>%
dplyr::select(-AM_EDOCIVIL) %>%
# promedios ponderados
dplyr::left_join(., d %>%
dplyr::group_by(MACRO_ZONA, ZONA_AGRUPADA, ZONA_TOPAZ_ID) %>%
dplyr::summarise("P" = sum(POBLACION))) %>%
dplyr::mutate("W" = POBLACION/P) %>%
dplyr::mutate("CERCANIA" = W*CERCANIA/100000,
"CENTRALIDAD_PODER" = W*CENTRALIDAD_PODER,
"CERCANIA_PROM" = W*CERCANIA_PROM,
"CERCANIA_REL" = W*CERCANIA_REL/100000,
"N2" = W*N2,
"N3" = W*N3,
"ES_SOLO" = W*ES_SOLO,
"DIF_GRAPOES" = W*DIF_GRAPOES,
"DIF_PERSXHOGAR" = W*DIF_PERSXHOGAR,
"DIF_AUTOS" = W*DIF_AUTOS,
"TASA_EST" = W*TASA_EST,
"CRIMENES" = W*CRIMENES,
"TENDENCIA" = W*TENDENCIA,
"COB_NET_PRIM" = W*COB_NET_PRIM,
"COB_NET_SEC" = W*COB_NET_SEC,
"COB_NET_PREP" = W*COB_NET_PREP,
"COB_NET_PROF" = W*COB_NET_PROF,
"REZ_TOTAL_ADULTO" = W*REZ_TOTAL_ADULTO,
"REZ_PREPA_ADULTO" = W*REZ_PREPA_ADULTO,
"ESCOLARIDAD" = W*ESCOLARIDAD,
"PEA" = W*PEA,
"CATOLICOS" = W*CATOLICOS,
"CENS_PERSXHOGAR" = W*CENS_PERSXHOGAR,
"CENS_AUTO" = W*CENS_AUTO,
"CENS_PC" = W*CENS_PC,
"P_EDAD_EDU" = W*P_EDAD_EDU,
"P_EDAD_EDU_PROF" = W*P_EDAD_EDU_PROF,
"P_EDAD_EDUF_PREPA" = W*P_EDAD_EDUF_PREPA,
"P_EDAD_EDUF_PROF" = W*P_EDAD_EDUF_PROF,
"HACINAMIENTO" = W*HACINAMIENTO,
"DENSIDAD" = W*DENSIDAD,
"GEN_REZ_PREPA" = W*GEN_REZ_PREPA,
"GEN_PART_PEA" = W*GEN_PART_PEA,
"MIGRACION" = W*MIGRACION,
"C_TEORICO" = W*C_TEORICO,
"C_PROM" = W*C_PROM,
"HH_UE_2014" = W*HH_UE_2014,
"LQ_EMP_2014_11" = W*LQ_EMP_2014_11,
"LQ_EMP_2014_21" = W*LQ_EMP_2014_21,
"LQ_EMP_2014_22" = W*LQ_EMP_2014_22,
"LQ_EMP_2014_23" = W*LQ_EMP_2014_23,
"LQ_EMP_2014_43" = W*LQ_EMP_2014_43,
"LQ_EMP_2014_46" = W*LQ_EMP_2014_46,
"LQ_EMP_2014_51" = W*LQ_EMP_2014_51,
"LQ_EMP_2014_52" = W*LQ_EMP_2014_52,
"LQ_EMP_2014_53" = W*LQ_EMP_2014_53,
"LQ_EMP_2014_54" = W*LQ_EMP_2014_54,
"LQ_EMP_2014_55" = W*LQ_EMP_2014_55,
"LQ_EMP_2014_56" = W*LQ_EMP_2014_56,
"LQ_EMP_2014_61" = W*LQ_EMP_2014_61,
"LQ_EMP_2014_62" = W*LQ_EMP_2014_62,
"LQ_EMP_2014_71" = W*LQ_EMP_2014_71,
"LQ_EMP_2014_72" = W*LQ_EMP_2014_72,
"LQ_EMP_2014_81" = W*LQ_EMP_2014_81,
"LQ_EMP_2014_SC" = W*LQ_EMP_2014_SC,
"LQ_EMP_2014_OTROS" = W*LQ_EMP_2014_OTROS,
"LQ_ING_2014_OTROS" = W*LQ_ING_2014_OTROS,
"LQ_EMP_2014_PRIMARIA" = W*LQ_EMP_2014_PRIMARIA,
"LQ_ING_2014_PRIMARIA" = W*LQ_ING_2014_PRIMARIA,
"LQ_EMP_2014_SECUNDARIA" = W*LQ_EMP_2014_SECUNDARIA,
"LQ_ING_2014_SECUNDARIA" = W*LQ_ING_2014_SECUNDARIA,
"LQ_EMP_2014_TERCIARIA" = W*LQ_EMP_2014_TERCIARIA,
"LQ_ING_2014_TERCIARIA" = W*LQ_ING_2014_TERCIARIA,
"TMR_SEC" = W*TMR_SEC,
"TMR_PREP" = W*TMR_PREP,
"TMR_PROF" = W*TMR_PROF,
"TA_PREP" = W*TA_PREP,
"TA_PRO" = W*TA_PRO,
"L_ADMINISTRACION" = W*L_ADMINISTRACION,
"L_ARQUITECTURA_Y_CONSTRUCCION" = W*L_ARQUITECTURA_Y_CONSTRUCCION,
"L_CIENCIAS_DE_LA_INFORMACION" = W*L_CIENCIAS_DE_LA_INFORMACION,
"L_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO" = W*L_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO,
"L_DERECHO" = W*L_DERECHO,
"L_HUMANIDADES" = W*L_HUMANIDADES,
"L_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA" = W*L_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA,
"L_MANUFACTURAS_Y_PROCESOS" = W*L_MANUFACTURAS_Y_PROCESOS,
"L_NEGOCIOS" = W*L_NEGOCIOS,
"L_SALUD" = W*L_SALUD,
"C_ADMINISTRACION" = W*C_ADMINISTRACION,
"C_ARQUITECTURA_Y_CONSTRUCCION" = W*C_ARQUITECTURA_Y_CONSTRUCCION,
"C_CIENCIAS_DE_LA_INFORMACION" = W*C_CIENCIAS_DE_LA_INFORMACION,
"C_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO" = W*C_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO,
"C_DERECHO" = W*C_DERECHO,
"C_HUMANIDADES" = W*C_HUMANIDADES,
"C_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA" = W*C_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA,
"C_MANUFACTURAS_Y_PROCESOS" = W*C_MANUFACTURAS_Y_PROCESOS,
"C_NEGOCIOS" = W*C_NEGOCIOS,
"C_SALUD" = W*C_SALUD,
"HH_COMP_GDE" = W*HH_COMP_GDE,
"HH_GENERAL" = W*HH_GENERAL,
"SHR_PUB" = W*SHR_PUB,
"SHR_GDE" = W*SHR_GDE,
"SHR_MAYOR" = W*SHR_MAYOR,
"TEND_SHR_PUB" = W*TEND_SHR_PUB
#### fin de los promedios ponderados, ahora las sumas...
# "POBLACION" = sum(POBLACION),
# "EDAD_EDU" = sum(EDAD_EDU),
# "EDAD_EDU_PROF" = sum(EDAD_EDU_PROF),
# "EDAD_EDUF_PREPA" = sum(EDAD_EDUF_PREPA),
# "EDAD_EDUF_PROF" = sum(EDAD_EDUF_PROF),
# "EST_MODELO" = sum(EST_MODELO)
) %>%
dplyr::group_by(MACRO_ZONA, ZONA_AGRUPADA, ZONA_TOPAZ_ID) %>%
dplyr::summarise("CERCANIA" = sum(CERCANIA),
"CENTRALIDAD_PODER" = sum(CENTRALIDAD_PODER),
"CERCANIA_PROM" = sum(CERCANIA_PROM),
"CERCANIA_REL" = sum(CERCANIA_REL),
"N2" = sum(N2),
"N3" = sum(N3),
"ES_SOLO" = sum(ES_SOLO),
"DIF_GRAPOES" = sum(DIF_GRAPOES),
"DIF_PERSXHOGAR" = sum(DIF_PERSXHOGAR),
"DIF_AUTOS" = sum(DIF_AUTOS),
"TASA_EST" = sum(TASA_EST),
"CRIMENES" = sum(CRIMENES),
"TENDENCIA" = sum(TENDENCIA),
"COB_NET_PRIM" = sum(COB_NET_PRIM),
"COB_NET_SEC" = sum(COB_NET_SEC),
"COB_NET_PREP" = sum(COB_NET_PREP),
"COB_NET_PROF" = sum(COB_NET_PROF),
"REZ_TOTAL_ADULTO" = sum(REZ_TOTAL_ADULTO),
"REZ_PREPA_ADULTO" = sum(REZ_PREPA_ADULTO),
"ESCOLARIDAD" = sum(ESCOLARIDAD),
"PEA" = sum(PEA),
"CATOLICOS" = sum(CATOLICOS),
"CENS_PERSXHOGAR" = sum(CENS_PERSXHOGAR),
"CENS_AUTO" = sum(CENS_AUTO),
"CENS_PC" = sum(CENS_PC),
"P_EDAD_EDU" = sum(P_EDAD_EDU),
"P_EDAD_EDU_PROF" = sum(P_EDAD_EDU_PROF),
"P_EDAD_EDUF_PREPA" = sum(P_EDAD_EDUF_PREPA),
"P_EDAD_EDUF_PROF" = sum(P_EDAD_EDUF_PROF),
"HACINAMIENTO" = sum(HACINAMIENTO),
"DENSIDAD" = sum(DENSIDAD),
"GEN_REZ_PREPA" = sum(GEN_REZ_PREPA),
"GEN_PART_PEA" = sum(GEN_PART_PEA),
"MIGRACION" = sum(MIGRACION),
"C_TEORICO" = sum(C_TEORICO),
"C_PROM" = sum(C_PROM),
"HH_UE_2014" = sum(HH_UE_2014),
"LQ_EMP_2014_11" = sum(LQ_EMP_2014_11),
"LQ_EMP_2014_21" = sum(LQ_EMP_2014_21),
"LQ_EMP_2014_22" = sum(LQ_EMP_2014_22),
"LQ_EMP_2014_23" = sum(LQ_EMP_2014_23),
"LQ_EMP_2014_43" = sum(LQ_EMP_2014_43),
"LQ_EMP_2014_46" = sum(LQ_EMP_2014_46),
"LQ_EMP_2014_51" = sum(LQ_EMP_2014_51),
"LQ_EMP_2014_52" = sum(LQ_EMP_2014_52),
"LQ_EMP_2014_53" = sum(LQ_EMP_2014_53),
"LQ_EMP_2014_54" = sum(LQ_EMP_2014_54),
"LQ_EMP_2014_55" = sum(LQ_EMP_2014_55),
"LQ_EMP_2014_56" = sum(LQ_EMP_2014_56),
"LQ_EMP_2014_61" = sum(LQ_EMP_2014_61),
"LQ_EMP_2014_62" = sum(LQ_EMP_2014_62),
"LQ_EMP_2014_71" = sum(LQ_EMP_2014_71),
"LQ_EMP_2014_72" = sum(LQ_EMP_2014_72),
"LQ_EMP_2014_81" = sum(LQ_EMP_2014_81),
"LQ_EMP_2014_SC" = sum(LQ_EMP_2014_SC),
"LQ_EMP_2014_OTROS" = sum(LQ_EMP_2014_OTROS),
"LQ_ING_2014_OTROS" = sum(LQ_ING_2014_OTROS),
"LQ_EMP_2014_PRIMARIA" = sum(LQ_EMP_2014_PRIMARIA),
"LQ_ING_2014_PRIMARIA" = sum(LQ_ING_2014_PRIMARIA),
"LQ_EMP_2014_SECUNDARIA" = sum(LQ_EMP_2014_SECUNDARIA),
"LQ_ING_2014_SECUNDARIA" = sum(LQ_ING_2014_SECUNDARIA),
"LQ_EMP_2014_TERCIARIA" = sum(LQ_EMP_2014_TERCIARIA),
"LQ_ING_2014_TERCIARIA" = sum(LQ_ING_2014_TERCIARIA),
"TMR_SEC" = sum(TMR_SEC),
"TMR_PREP" = sum(TMR_PREP),
"TMR_PROF" = sum(TMR_PROF),
"TA_PREP" = sum(TA_PREP),
"TA_PRO" = sum(TA_PRO),
"L_ADMINISTRACION" = sum(L_ADMINISTRACION),
"L_ARQUITECTURA_Y_CONSTRUCCION" = sum(L_ARQUITECTURA_Y_CONSTRUCCION),
"L_CIENCIAS_DE_LA_INFORMACION" = sum(L_CIENCIAS_DE_LA_INFORMACION),
"L_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO" = sum(L_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO),
"L_DERECHO" = sum(L_DERECHO),
"L_HUMANIDADES" = sum(L_HUMANIDADES),
"L_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA" = sum(L_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA),
"L_MANUFACTURAS_Y_PROCESOS" = sum(L_MANUFACTURAS_Y_PROCESOS),
"L_NEGOCIOS" = sum(L_NEGOCIOS),
"L_SALUD" = sum(L_SALUD),
"C_ADMINISTRACION" = sum(C_ADMINISTRACION),
"C_ARQUITECTURA_Y_CONSTRUCCION" = sum(C_ARQUITECTURA_Y_CONSTRUCCION),
"C_CIENCIAS_DE_LA_INFORMACION" = sum(C_CIENCIAS_DE_LA_INFORMACION),
"C_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO" = sum(C_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO),
"C_DERECHO" = sum(C_DERECHO),
"C_HUMANIDADES" = sum(C_HUMANIDADES),
"C_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA" = sum(C_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA),
"C_MANUFACTURAS_Y_PROCESOS" = sum(C_MANUFACTURAS_Y_PROCESOS),
"C_NEGOCIOS" = sum(C_NEGOCIOS),
"C_SALUD" = sum(C_SALUD),
"HH_COMP_GDE" = sum(HH_COMP_GDE),
"HH_GENERAL" = sum(HH_GENERAL),
"SHR_PUB" = sum(SHR_PUB),
"SHR_GDE" = sum(SHR_GDE),
"SHR_MAYOR" = sum(SHR_MAYOR),
"TEND_SHR_PUB" = sum(TEND_SHR_PUB),
#### fin de los promedios ponderados, ahora las sumas...
"POBLACION" = sum(POBLACION),
"EDAD_EDU" = sum(EDAD_EDU),
"EDAD_EDU_PROF" = sum(EDAD_EDU_PROF),
"EDAD_EDUF_PREPA" = sum(EDAD_EDUF_PREPA),
"EDAD_EDUF_PROF" = sum(EDAD_EDUF_PROF),
"EST_MODELO" = sum(EST_MODELO))
}else{
dd <- d %>%
# columnas nuevas de diferencias absolutas
dplyr::mutate("DIF_GRAPOES" = 1/(abs(AM_GRAPROES-ESCOLARIDAD)^2),
"DIF_PERSXHOGAR" = 1/(abs(AM_PERSXHOGAR-CENS_PERSXHOGAR)^2),
"DIF_AUTOS" = 1/(abs(AM_AUTOS-CENS_AUTO)^2)) %>%
dplyr::select(-AM_EDOCIVIL) %>%
# promedios ponderados
dplyr::group_by(MACRO_ZONA, ZONA_AGRUPADA, ZONA_TOPAZ_ID) %>%
dplyr::summarise("CERCANIA" = t_ppond(POBLACION, CERCANIA)/100000,
"CENTRALIDAD_PODER" = t_ppond(POBLACION, CENTRALIDAD_PODER),
"CERCANIA_PROM" = t_ppond(POBLACION, CERCANIA_PROM),
"CERCANIA_REL" = t_ppond(POBLACION, CERCANIA_REL)/100000,
"N2" = t_ppond(POBLACION, N2),
"N3" = t_ppond(POBLACION, N3),
"ES_SOLO" = t_ppond(POBLACION, ES_SOLO),
"DIF_GRAPOES" = t_ppond(POBLACION, DIF_GRAPOES),
"DIF_PERSXHOGAR" = t_ppond(POBLACION, DIF_PERSXHOGAR),
"DIF_AUTOS" = t_ppond(POBLACION, DIF_AUTOS),
"TASA_EST" = t_ppond(POBLACION, TASA_EST),
"CRIMENES" = t_ppond(POBLACION, CRIMENES),
"TENDENCIA" = t_ppond(POBLACION, TENDENCIA),
"COB_NET_PRIM" = t_ppond(POBLACION, COB_NET_PRIM),
"COB_NET_SEC" = t_ppond(POBLACION, COB_NET_SEC),
"COB_NET_PREP" = t_ppond(POBLACION, COB_NET_PREP),
"COB_NET_PROF" = t_ppond(POBLACION, COB_NET_PROF),
"REZ_TOTAL_ADULTO" = t_ppond(POBLACION, REZ_TOTAL_ADULTO),
"REZ_PREPA_ADULTO" = t_ppond(POBLACION, REZ_PREPA_ADULTO),
"ESCOLARIDAD" = t_ppond(POBLACION, ESCOLARIDAD),
"PEA" = t_ppond(POBLACION, PEA),
"CATOLICOS" = t_ppond(POBLACION, CATOLICOS),
"CENS_PERSXHOGAR" = t_ppond(POBLACION, CENS_PERSXHOGAR),
"CENS_AUTO" = t_ppond(POBLACION, CENS_AUTO),
"CENS_PC" = t_ppond(POBLACION, CENS_PC),
"P_EDAD_EDU" = t_ppond(POBLACION, P_EDAD_EDU),
"P_EDAD_EDU_PROF" = t_ppond(POBLACION, P_EDAD_EDU_PROF),
"P_EDAD_EDUF_PREPA" = t_ppond(POBLACION, P_EDAD_EDUF_PREPA),
"P_EDAD_EDUF_PROF" = t_ppond(POBLACION, P_EDAD_EDUF_PROF),
"HACINAMIENTO" = t_ppond(POBLACION, HACINAMIENTO),
"DENSIDAD" = t_ppond(POBLACION, DENSIDAD),
"GEN_REZ_PREPA" = t_ppond(POBLACION, GEN_REZ_PREPA),
"GEN_PART_PEA" = t_ppond(POBLACION, GEN_PART_PEA),
"MIGRACION" = t_ppond(POBLACION, MIGRACION),
"C_TEORICO" = t_ppond(POBLACION, C_TEORICO),
"C_PROM" = t_ppond(POBLACION, C_PROM),
"HH_UE_2014" = t_ppond(POBLACION, HH_UE_2014),
"LQ_EMP_2014_11" = t_ppond(POBLACION, LQ_EMP_2014_11),
"LQ_EMP_2014_21" = t_ppond(POBLACION, LQ_EMP_2014_21),
"LQ_EMP_2014_22" = t_ppond(POBLACION, LQ_EMP_2014_22),
"LQ_EMP_2014_23" = t_ppond(POBLACION, LQ_EMP_2014_23),
"LQ_EMP_2014_43" = t_ppond(POBLACION, LQ_EMP_2014_43),
"LQ_EMP_2014_46" = t_ppond(POBLACION, LQ_EMP_2014_46),
"LQ_EMP_2014_51" = t_ppond(POBLACION, LQ_EMP_2014_51),
"LQ_EMP_2014_52" = t_ppond(POBLACION, LQ_EMP_2014_52),
"LQ_EMP_2014_53" = t_ppond(POBLACION, LQ_EMP_2014_53),
"LQ_EMP_2014_54" = t_ppond(POBLACION, LQ_EMP_2014_54),
"LQ_EMP_2014_55" = t_ppond(POBLACION, LQ_EMP_2014_55),
"LQ_EMP_2014_56" = t_ppond(POBLACION, LQ_EMP_2014_56),
"LQ_EMP_2014_61" = t_ppond(POBLACION, LQ_EMP_2014_61),
"LQ_EMP_2014_62" = t_ppond(POBLACION, LQ_EMP_2014_62),
"LQ_EMP_2014_71" = t_ppond(POBLACION, LQ_EMP_2014_71),
"LQ_EMP_2014_72" = t_ppond(POBLACION, LQ_EMP_2014_72),
"LQ_EMP_2014_81" = t_ppond(POBLACION, LQ_EMP_2014_81),
"LQ_EMP_2014_SC" = t_ppond(POBLACION, LQ_EMP_2014_SC),
"LQ_EMP_2014_OTROS" = t_ppond(POBLACION, LQ_EMP_2014_OTROS),
"LQ_ING_2014_OTROS" = t_ppond(POBLACION, LQ_ING_2014_OTROS),
"LQ_EMP_2014_PRIMARIA" = t_ppond(POBLACION, LQ_EMP_2014_PRIMARIA),
"LQ_ING_2014_PRIMARIA" = t_ppond(POBLACION, LQ_ING_2014_PRIMARIA),
"LQ_EMP_2014_SECUNDARIA" = t_ppond(POBLACION, LQ_EMP_2014_SECUNDARIA),
"LQ_ING_2014_SECUNDARIA" = t_ppond(POBLACION, LQ_ING_2014_SECUNDARIA),
"LQ_EMP_2014_TERCIARIA" = t_ppond(POBLACION, LQ_EMP_2014_TERCIARIA),
"LQ_ING_2014_TERCIARIA" = t_ppond(POBLACION, LQ_ING_2014_TERCIARIA),
"TMR_SEC" = t_ppond(POBLACION, TMR_SEC),
"TMR_PREP" = t_ppond(POBLACION, TMR_PREP),
"TMR_PROF" = t_ppond(POBLACION, TMR_PROF),
"TA_PREP" = t_ppond(POBLACION, TA_PREP),
"TA_PRO" = t_ppond(POBLACION, TA_PRO),
"L_ADMINISTRACION" = t_ppond(POBLACION, L_ADMINISTRACION),
"L_ARQUITECTURA_Y_CONSTRUCCION" = t_ppond(POBLACION, L_ARQUITECTURA_Y_CONSTRUCCION),
"L_CIENCIAS_DE_LA_INFORMACION" = t_ppond(POBLACION, L_CIENCIAS_DE_LA_INFORMACION),
"L_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO" = t_ppond(POBLACION, L_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO),
"L_DERECHO" = t_ppond(POBLACION, L_DERECHO),
"L_HUMANIDADES" = t_ppond(POBLACION, L_HUMANIDADES),
"L_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA" = t_ppond(POBLACION, L_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA),
"L_MANUFACTURAS_Y_PROCESOS" = t_ppond(POBLACION, L_MANUFACTURAS_Y_PROCESOS),
"L_NEGOCIOS" = t_ppond(POBLACION, L_NEGOCIOS),
"L_SALUD" = t_ppond(POBLACION, L_SALUD),
"C_ADMINISTRACION" = t_ppond(POBLACION, C_ADMINISTRACION),
"C_ARQUITECTURA_Y_CONSTRUCCION" = t_ppond(POBLACION, C_ARQUITECTURA_Y_CONSTRUCCION),
"C_CIENCIAS_DE_LA_INFORMACION" = t_ppond(POBLACION, C_CIENCIAS_DE_LA_INFORMACION),
"C_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO" = t_ppond(POBLACION, C_CIENCIAS_SOCIALES_Y_ESTUDIOS_DEL_COMPORTAMIENTO),
"C_DERECHO" = t_ppond(POBLACION, C_DERECHO),
"C_HUMANIDADES" = t_ppond(POBLACION, C_HUMANIDADES),
"C_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA" = t_ppond(POBLACION, C_INGENIERIA_INDUSTRIAL__MECANICA_Y_ELECTRICA),
"C_MANUFACTURAS_Y_PROCESOS" = t_ppond(POBLACION, C_MANUFACTURAS_Y_PROCESOS),
"C_NEGOCIOS" = t_ppond(POBLACION, C_NEGOCIOS),
"C_SALUD" = t_ppond(POBLACION, C_SALUD),
"HH_COMP_GDE" = t_ppond(POBLACION, HH_COMP_GDE),
"HH_GENERAL" = t_ppond(POBLACION, HH_GENERAL),
"SHR_PUB" = t_ppond(POBLACION, SHR_PUB),
"SHR_GDE" = t_ppond(POBLACION, SHR_GDE),
"SHR_MAYOR" = t_ppond(POBLACION, SHR_MAYOR),
"TEND_SHR_PUB" = t_ppond(POBLACION, TEND_SHR_PUB),
#### fin de los promedios ponderados, ahora las sumas...
"POBLACION" = sum(POBLACION),
"EDAD_EDU" = sum(EDAD_EDU),
"EDAD_EDU_PROF" = sum(EDAD_EDU_PROF),
"EDAD_EDUF_PREPA" = sum(EDAD_EDUF_PREPA),
"EDAD_EDUF_PROF" = sum(EDAD_EDUF_PROF),
"EST_MODELO" = sum(EST_MODELO))
}
return(dd)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.