La estadística descriptiva es una rama de la estadística que se encarga de recopilar, organizar, presentar y analizar un conjunto de datos, con el fin de describir sus características principales mediante medidas numéricas y representaciones gráficas.
En economía, se utiliza para analizar procesos como ingresos, empleo, inflación o desigualdad, y generar diagnósticos que permitan la comprensión integral del sistema productivo.
# Borra todos los objetos del entorno
rm(list = ls())
# Libera memoria
gc()
## used (Mb) gc trigger (Mb) max used (Mb)
## Ncells 531161 28.4 1187410 63.5 660385 35.3
## Vcells 966743 7.4 8388608 64.0 1769427 13.5
# Muestra en qué carpeta estás trabajando
getwd()
## [1] "C:/Users/brand/iCloudDrive/DESK2025SAID/CLASES 20262/LABORATORIO 4/MARKDOWN - copia"
#Ubicar carpeta en la pestaña de Session > Set working > Choose
Simularemos datos de 500 personas con edades e ingreos aleatorios bajo una distribución normal.
set.seed(123) # Para que todos obtengan el mismo resultado
n <- 500 # Número de registros
edad <- round(rnorm(n, mean = 30, sd = 10))
ingreso <- round(rlnorm(n, meanlog = 8, sdlog = 0.4), 0)
datos <- data.frame(
ID = 1:n,
Edad = edad,
Ingreso = ingreso
)
head(datos)
## ID Edad Ingreso
## 1 1 24 2343
## 2 2 28 2003
## 3 3 46 4495
## 4 4 31 4026
## 5 5 31 1630
## 6 6 47 2870
resumen <- summary(datos)
print(resumen)
## ID Edad Ingreso
## Min. : 1.0 Min. : 3.00 Min. : 969
## 1st Qu.:125.8 1st Qu.:24.00 1st Qu.:2264
## Median :250.5 Median :30.00 Median :2980
## Mean :250.5 Mean :30.33 Mean :3233
## 3rd Qu.:375.2 3rd Qu.:37.00 3rd Qu.:3855
## Max. :500.0 Max. :62.00 Max. :8749
if (!require(openxlsx)) install.packages("openxlsx")
## Warning: package 'openxlsx' was built under R version 4.3.3
library(openxlsx)
wb <- createWorkbook()
addWorksheet(wb, "Resumen")
writeData(wb, "Resumen", as.data.frame(resumen))
saveWorkbook(wb, "resumen_datos.xlsx", overwrite = TRUE)
hist(datos$Edad,
probability = TRUE,
main = "Histograma de Edad con Curva Normal",
xlab = "edad",
col = "skyblue",
border = "white")
curve(dnorm(x, mean = mean(datos$Edad), sd = sd(datos$Edad)),
col = "red", lwd = 2, add = TRUE)
boxplot(datos$Edad, datos$Ingreso,
names = c("Edad", "Ingreso"),
main = "Diagrama de Caja de Edad e Ingreso",
col = c("orange", "darkolivegreen3"),
horizontal = TRUE)
plot(datos$Edad, datos$Ingreso,
main = "Dispersión entre Edad e Ingreso",
xlab = "edad",
ylab = "ingreso",
pch = 19,
col = rgb(0.1, 0.2, 0.5, 0.5))
abline(lm(ingreso ~ edad, data = datos), col = "red", lwd = 2)
write.csv(datos, "datos_simulados.csv", row.names = FALSE)