Ligas para descargar Bases de datos https://www.inegi.org.mx/programas/endiseg/2021/#Microdatos
Antes de empezar necesitamos un Directorio de Trabajo; en el se guardaran las bases de datos y los resultados, a esto se le llama “directorio de trabajo”.
# Establecer directorio de trabajo
setwd ("C:/Users/Nurin/Downloads/Bases_dat_fes")
Para verfificar la ubicación del directorio de trabajo corremos la siguiente instrucción:
getwd ()
## [1] "C:/Users/Nurin/Downloads/Bases_dat_fes"
Para revisar que paquetes estan instalados y para instalar cualquier paquetería ponemos la siguiente instrucción
installed.packages()
Para abrir distintos formatos de base de datos instalaremos la paquetería “haven” (abre formatos: stata, sas, spss). Además instalaremos paquetes para guardar, abrir, salvar en formato CSV como: “csv” , “csvread”,“csvwr”, “csvy”, “read.csv” y “read.csv2”
Una vez instaladas las paqueterías, podemos llamarlas con la instrucción “library”
Ahora podemos trabajar con nuestra base de datos en formato csv, pero primero debemos comprender como funciona la instrucción, “read.csv”
Formato CSV: notas para comprender la instrucción
# read.csv (file, # Nombre del archivo o ruta completa del archivo
# header = TRUE, # Leer el encabezado/nombre de variables (TRUE) o no (FALSE)
# fill = TRUE # Rellenar celdas vacías (TRUE) o no (FALSE)
# ) # Cerrar instrucción
Nota: en el curso utilizaremos la Bases de datos “Encuesta Nacional sobre Diversidad Sexual y de Género” (ENDISEG)
tsdem <- read.csv ("C:/Users/Nurin/Downloads/Bases_dat_fes/Bases/TSDEM.csv", header=TRUE, fill=TRUE)
tapartA <- read.csv ("C:/Users/Nurin/Downloads/Bases_dat_fes/Bases/TAPART_A.csv", header=TRUE, fill=TRUE)
tapartB <- read.csv ("C:/Users/Nurin/Downloads/Bases_dat_fes/Bases/TAPART_B.csv", header=TRUE, fill=TRUE)
tmodulo <- read.csv ("C:/Users/Nurin/Downloads/Bases_dat_fes/Bases/TMODULO.csv", header=TRUE, fill=TRUE)
tvivienda <- read.csv ("C:/Users/Nurin/Downloads/Bases_dat_fes/Bases/TVIVIENDA.csv", header=TRUE, fill=TRUE)
Para visualizar la base de datos sociodemográfica de la ENISEG corremos las siguiente instrucción
View(tsdem)
isdem1 <-merge(x = tapartA, y = tsdem, by=c("FOLIO", "VIV_SEL", "HOGAR", "N_REN"), all = TRUE)
isdem2 <-merge(x = tapartB, y = isdem1 , by=c("FOLIO", "VIV_SEL", "HOGAR", "N_REN"), all = TRUE)
isdem <-merge(x = tmodulo, y = isdem2, by=c("FOLIO", "VIV_SEL", "HOGAR", "N_REN"), all = TRUE)
## Warning in merge.data.frame(x = tmodulo, y = isdem2, by = c("FOLIO",
## "VIV_SEL", : column names 'EST_DIS.x', 'UPM_DIS.x', 'FACTOR.x', 'EST_DIS.y',
## 'UPM_DIS.y', 'FACTOR.y' are duplicated in the result
endiseg <-merge(x = tvivienda, y = isdem, by=c("FOLIO", "VIV_SEL"), all = TRUE)
#sort(endiseg, decreasing = FALSE, na.last = TRUE, method = c("FOLIO", "VIV_SEL", "HOGAR", "N_REN"))
saveRDS(endiseg,file="endisegR.Rda")
endisegR <-readRDS("endisegR.Rda")
Una vez instalados los paquetes en R, cada vez que los requiramos debemos activar la libreria utilizando la instrucción “library”.
Para obtener las estadísticas descriptivas de toda la base usaremos la siguiente instrucción
# Nota copiar y pegar la instrucción
#result <-stat.desc(endisegR[, -5])
# round(result,2)
Exportar las estadísticas descriptivas a formato CSV
write.csv(result,"endiseg21.csv")
boxplot(endisegR$EDAD, col="lightblue", main= "Gráfica de caja de la variable edad ")
points(mean(endisegR$EDAD), pch=8)
Ejemplo 1: Histograma de frecuencias de la variable edad.
library(ggpubr)
## Loading required package: ggplot2
gghistogram(endisegR, x="EDAD",bins=10, color="darkblue",
fill="lightblue",title="Histograma de frecuencias", add = "mean")
## Warning: geom_vline(): Ignoring `mapping` because `xintercept` was provided.
## Warning: geom_vline(): Ignoring `data` because `xintercept` was provided.
hist(endisegR$EDAD, col="orange", main="Histograma de edad",
ylab="Frecuencia", xlab="Edad simple")
Ejemplo 2: Histograma de frecuencias de la variable escolaridad.
gghistogram(endisegR, x="NIV",bins=10,title="Histograma de frecuencias", add="mean")
## Warning: geom_vline(): Ignoring `mapping` because `xintercept` was provided.
## Warning: geom_vline(): Ignoring `data` because `xintercept` was provided.
## Warning: Removed 108308 rows containing non-finite values (stat_bin).
# tfreq1 <- as.data.frame(table(endisegR$EDAD))
# tfreq1
tfreq2<-table(endisegR$SEXO,endisegR$P8_1A)
tfreq2
##
## 1 2 3 4
## 1 46 516 276 73
## 2 195 83 831 150
gbar1 <-barplot(table(endisegR$SEXO), col="lightgrey",
xlab= "Sexo", ylab= "Frecuencias",
main="ENDISEG 2021: Diagrama de barras")
text(x=gbar1, y=table(endisegR$SEXO),labels=(as.character(table(endisegR$SEXO))), pos=1)
Con la siguiente instrucción crearemos varias muestras aleatorias simples, bajo el suspuesto de que la población sigue una distribución de probabilidad normal.
# mendiseg <-endisegR %>% slice_sample(n = 5000)
Salvar muestra en carpeta en formato R.
# saveRDS(mendiseg,file="mendiseg.Rda")