Pregunta 1 - Comparar ingreso corriente (ing_cor) de los 6 estados (Estado) del centro (Cd de MƩxico (9), Estado de MƩxico (15), Hidalgo (13), Morelos (17), Puebla (21), Tlaxcala(29))

baseDatos = read.csv("Centro.csv")

options(scipen=999)
baseDatos$Estado <- as.factor(baseDatos$Estado)
levels(baseDatos$Estado) <- c("CDMX", "Edomex", "Hidalgo", "Morelos", "Puebla", "Tlaxcala")
boxplot(baseDatos$ing_cor ~ baseDatos$Estado, col= c("blue", "magenta", "cyan", "orange", "purple", "green"), ylab="Ingreso corriente", xlab="Estado", main="Ingreso Corriente en el Centro de MƩxico")

Histogramas

baseDatos = read.csv("Centro.csv")

options(scipen=999)

par(mfrow=c(2,3)) #dividirƔ en seis partes, dos renglones y tres columnas y en cada uno de esos espacios va una grƔfica

# Cd. MƩxico (9)

CdMexico = subset(baseDatos,baseDatos$Estado==9) 

hist(CdMexico$ing_cor, col="blue", ylab="Frecuencia", xlab="Ingreso corriente", main="Ciudad de MƩxico")

# Edo. MƩxico (15)

EdoMexico = subset(baseDatos,baseDatos$Estado==15) 

hist(EdoMexico$ing_cor, col="magenta", ylab="Frecuencia", xlab="Ingreso corriente", main="Estado de MƩxico")

# Hidalgo (13)

Hidalgo = subset(baseDatos,baseDatos$Estado==13) 

hist(Hidalgo$ing_cor, col="cyan", ylab="Frecuencia", xlab="Ingreso corriente", main="Hidalgo")

# Morelos (17)

Morelos = subset(baseDatos,baseDatos$Estado==17) 

hist(Morelos$ing_cor, col="orange", ylab="Frecuencia", xlab="Ingreso corriente", main="Morelos")

# Puebla (21)

Puebla = subset(baseDatos,baseDatos$Estado==21) 

hist(Puebla$ing_cor, col="purple", ylab="Frecuencia", xlab="Ingreso corriente", main="Puebla")

# Tlaxcala (29)

Tlaxcala = subset(baseDatos,baseDatos$Estado==29) 

hist(Tlaxcala$ing_cor, col="green", ylab="Frecuencia", xlab="Ingreso corriente", main="Tlaxcala")

Medidas descriptivas

library(knitr)
library(kableExtra)
media=tapply(baseDatos$ing_cor,baseDatos$Estado,mean) #calcula media de ingreso por nivel socioeconómico
mediana=tapply(baseDatos$ing_cor,baseDatos$Estado,median)
rangointer=tapply(baseDatos$ing_cor,baseDatos$Estado,IQR)
desviacionstd=tapply(baseDatos$ing_cor,baseDatos$Estado,sd)
descriptive<-data.frame(media,mediana,rangointer,desviacionstd) #data.frame une las medidas anteriores en una tabla
colnames(descriptive)=c("Media", "Mediana", "Rango Inter", "Desviación Std")
rownames(descriptive)=c("Ciudad de MƩxico", "Estado de MƩxico", "Hidalgo", "Morelos", "Puebla", "Tlaxcala")
kable(descriptive, caption = "Medidas Descriptivas", format = "html") %>%
  kable_styling(full_width = FALSE) %>%
  column_spec(1, width = "3.5cm") %>%
  column_spec(2, width = "3cm") %>%
  column_spec(3, width = "3cm") %>%
  column_spec(4, width = "3cm") %>%
  column_spec(5, width = "3.2cm")
Medidas Descriptivas
Media Mediana Rango Inter Desviación Std
Ciudad de MƩxico 77602.32 57389.22 51332.33 80502.68
Estado de MƩxico 50063.32 39051.40 38213.03 42514.05
Hidalgo 52216.13 41460.19 35438.83 41440.16
Morelos 58325.18 43385.22 43394.45 60785.44
Puebla 47658.21 38799.96 32282.99 34166.85
Tlaxcala 47880.22 39525.34 34946.00 34409.92

Pregunta 2 - Comparar ingreso corriente (ing_cor) de las zonas urbanas y rurales

baseDatos = read.csv("Centro.csv")

options(scipen=999)
baseDatos$localidad <- as.factor(baseDatos$localidad)
levels(baseDatos$localidad) <- c("Rural", "Urbana")
boxplot(baseDatos$ing_cor ~ baseDatos$localidad, col= c("magenta", "blue"), ylab="Ingreso corriente", xlab="Zona", main="Ingreso Corriente en Zonas Rurales y Urbanas")

## Histogramas

baseDatos = read.csv("Centro.csv")

options(scipen=999)

par(cex = 0.7) 
par(mfrow=c(1,2)) #dividirÔ en seis partes, un renglón y tres columnas y en cada uno de esos espacios va una grÔfica

# Rural

Rural = subset(baseDatos,baseDatos$localidad=="R") 

hist(Rural$ing_cor, col="magenta", ylab="Frecuencia", xlab="Ingreso corriente", main="Zona Rural")

# Urbano

Urbano = subset(baseDatos,baseDatos$localidad=="U") 

hist(Urbano$ing_cor, col="blue", ylab="Frecuencia", xlab="Ingreso corriente", main="Zona Urbana")

Medidas descriptivas

library(knitr)
library(kableExtra)
media=tapply(baseDatos$ing_cor,baseDatos$localidad,mean) #calcula media de ingreso por nivel socioeconómico
mediana=tapply(baseDatos$ing_cor,baseDatos$localidad,median)
rangointer=tapply(baseDatos$ing_cor,baseDatos$localidad,IQR)
desviacionstd=tapply(baseDatos$ing_cor,baseDatos$localidad,sd)
descriptive<-data.frame(media,mediana,rangointer,desviacionstd) #data.frame une las medidas anteriores en una tabla
colnames(descriptive)=c("Media", "Mediana", "Rango Inter", "Desviación Std")
rownames(descriptive)=c("Zona Rural", "Zona Urbana")
kable(descriptive, caption = "Medidas Descriptivas", format = "html") %>%
  kable_styling(full_width = FALSE) %>%
  column_spec(1, width = "3.5cm") %>%
  column_spec(2, width = "3cm") %>%
  column_spec(3, width = "3cm") %>%
  column_spec(4, width = "3cm") %>%
  column_spec(5, width = "3.2cm")
Medidas Descriptivas
Media Mediana Rango Inter Desviación Std
Zona Rural 43615.90 34727.96 30095.65 31996.05
Zona Urbana 62138.22 47660.68 44179.53 59933.08

Pregunta 3 - Comparar gasto de las familias en Centro y Sur

baseCentro = read.csv("Centro.csv")
baseSur = read.csv("Sur.csv")

options(scipen=999)

boxplot(baseCentro$gasto_mon, baseSur$gasto_mon, col= c("purple", "green"))

par(mfrow=c(1,2)) #dividirÔ en seis partes, un renglón y tres columnas y en cada uno de esos espacios va una grÔfica

hist(baseCentro$gasto_mon, col="purple", ylab="Frecuencia", xlab="Gasto", main="Zona Centro")

hist(baseSur$gasto_mon, col="green", ylab="Frecuencia", xlab="Gasto", main="Zona Sur")

## Para unir las dos bases en una sola y crear una variable regiónn nueva que añadimos a la base

baseCentro = read.csv("Centro.csv")
baseSur = read.csv("Sur.csv")

options(scipen=999)

regionC=rep("Centro", nrow(baseCentro)) #creo un vector que tenga la longitud del nĆŗmero de renglones de la base
regionS=rep("Sur", nrow(baseSur)) #creo un vector que tenga la longitud del nĆŗmero de renglones de la base
baseCentro=cbind(baseCentro, regionC) #aƱadimos el vector que creamos como una nueva columna a la base Centro
baseSur=cbind(baseSur, regionS) #aƱadimos el vector que creamos como una nueva columna a la base Sur
#Ahora  necesitamos que en ambas bases la nueva columna se llame igual para luego unir todos los renglones de las dos bases

colnames(baseCentro)[colnames(baseCentro) == "regionC"] <- "region"
colnames(baseSur)[colnames(baseSur) == "regionS"] <- "region"
baseCentro_baseSur=rbind(baseCentro,baseSur) #une los renglones de las dos bases de datos ya con la nueva variable región

Diagrama de caja

options(scipen=999)
baseCentro_baseSur$region <- as.factor(baseCentro_baseSur$region)
levels(baseCentro_baseSur$region) <- c("Centro", "Sur")
boxplot(baseCentro_baseSur$gasto_mon ~ baseCentro_baseSur$region, col= c("purple", "green"), ylab="Gasto", xlab="Zona", main="Gasto en Zona Centro y Sur")

Medidas descriptivas

library(knitr)
library(kableExtra)
media=tapply(baseCentro_baseSur$gasto_mon,baseCentro_baseSur$region,mean) #calcula media de gasto por zona
mediana=tapply(baseCentro_baseSur$gasto_mon,baseCentro_baseSur$region,median)
rangointer=tapply(baseCentro_baseSur$gasto_mon,baseCentro_baseSur$region,IQR)
desviacionstd=tapply(baseCentro_baseSur$gasto_mon,baseCentro_baseSur$region,sd)
descriptive<-data.frame(media,mediana,rangointer,desviacionstd) #data.frame une las medidas anteriores en una tabla
colnames(descriptive)=c("Media", "Mediana", "Rango Inter", "Desviación Std")
rownames(descriptive)=c("Zona Centro", "Zona Sur")
kable(descriptive, caption = "Medidas Descriptivas", format = "html") %>%
  kable_styling(full_width = FALSE) %>%
  column_spec(1, width = "3.5cm") %>%
  column_spec(2, width = "3cm") %>%
  column_spec(3, width = "3cm") %>%
  column_spec(4, width = "3cm") %>%
  column_spec(5, width = "3.2cm")
Medidas Descriptivas
Media Mediana Rango Inter Desviación Std
Zona Centro 37834.30 29791.47 26096.96 40379.62
Zona Sur 27177.91 21951.25 19375.75 22759.81