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
|