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) limit (Mb) max used (Mb)
## Ncells 618749 33.1 1410030 75.4 NA 715648 38.3
## Vcells 1170120 9.0 8388608 64.0 16384 2010390 15.4
# Muestra en qué carpeta estás trabajando
getwd()
## [1] "/Users/brandonsaidbeltran/Library/Mobile Documents/com~apple~CloudDocs/DESK2025SAID/CLASES 20262/LABORATORIO 2/practica7"
#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))
estatura <- round(rnorm(n, mean = 170, sd = 10),1)
sexo <- sample(c("Hombre","Mujer"), n, replace = TRUE)
datos <- data.frame(
ID = 1:n,
Edad = edad,
Estatura = estatura,
Sexo = sexo
)
head(datos)
## ID Edad Estatura Sexo
## 1 1 24 164.0 Hombre
## 2 2 28 160.1 Hombre
## 3 3 46 180.3 Hombre
## 4 4 31 177.5 Mujer
## 5 5 31 154.9 Mujer
## 6 6 47 169.0 Hombre
resumen <- summary(datos)
print(resumen)
## ID Edad Estatura Sexo
## Min. : 1.0 Min. : 3.00 Min. :141.9 Length:500
## 1st Qu.:125.8 1st Qu.:24.00 1st Qu.:163.1 Class :character
## Median :250.5 Median :30.00 Median :170.0 Mode :character
## Mean :250.5 Mean :30.33 Mean :170.0
## 3rd Qu.:375.2 3rd Qu.:37.00 3rd Qu.:176.4
## Max. :500.0 Max. :62.00 Max. :196.9
if (!require(openxlsx)) install.packages("openxlsx")
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$Estatura,
names = c("Edad", "Estatura"),
main = "Diagrama de Caja de Edad y Estatura",
col = c("orange", "darkolivegreen3"),
horizontal = TRUE)
plot(datos$Edad, datos$Estatura,
main = "Dispersión entre Edad y Estatura",
xlab = "edad",
ylab = "estatura",
pch = 19,
col = rgb(0.1, 0.2, 0.5, 0.5))
abline(lm(estatura ~ edad, data = datos), col = "red", lwd = 2)
tabla_sexo <- table(datos$Sexo)
porcentaje <- round(prop.table(tabla_sexo)*100,1)
etiquetas <- paste(names(tabla_sexo), porcentaje, "%")
pie(tabla_sexo,
labels = etiquetas,
col = c("skyblue","pink"),
main = "Distribución porcentual por sexo")
write.csv(datos, "datos_simulados.csv", row.names = FALSE)