En este informe se analiza la relación entre el año y el número de
graduados en educación superior en Colombia, usando una regresión lineal
simple.
Los datos provienen del portal de datos abiertos del gobierno.
# Instala los paquetes solo si no los tienes (descomenta si hace falta)
# install.packages("readr")
# install.packages("ggplot2")
# install.packages("dplyr")
# install.packages("scales")
library(readr)
library(ggplot2)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(scales)
##
## Attaching package: 'scales'
## The following object is masked from 'package:readr':
##
## col_factor
# Cargar los datos desde el archivo CSV
datos <- read_csv("graduados.csv", locale = locale(encoding = "ISO-8859-1"))
## Rows: 513900 Columns: 33
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (21): Institución.de.Educación.Superior.(IES), Principal.o.Seccional, Se...
## dbl (12): Código.de.la.Institución, IES.PADRE, ID.Sector.IES, ID.Caracter, C...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
str(datos)
## spc_tbl_ [513,900 × 33] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ Código.de.la.Institución : num [1:513900] 1101 1101 1101 1101 1101 ...
## $ IES.PADRE : num [1:513900] 1101 1101 1101 1101 1101 ...
## $ Institución.de.Educación.Superior.(IES): chr [1:513900] "UNIVERSIDAD NACIONAL DE COLOMBIA" "UNIVERSIDAD NACIONAL DE COLOMBIA" "UNIVERSIDAD NACIONAL DE COLOMBIA" "UNIVERSIDAD NACIONAL DE COLOMBIA" ...
## $ Principal.o.Seccional : chr [1:513900] "PRINCIPAL" "PRINCIPAL" "PRINCIPAL" "PRINCIPAL" ...
## $ ID.Sector.IES : num [1:513900] 1 1 1 1 1 1 1 1 1 1 ...
## $ Sector.IES : chr [1:513900] "OFICIAL" "OFICIAL" "OFICIAL" "OFICIAL" ...
## $ ID.Caracter : num [1:513900] 4 4 4 4 4 4 4 4 4 4 ...
## $ Caracter.IES : chr [1:513900] "UNIVERSIDAD" "UNIVERSIDAD" "UNIVERSIDAD" "UNIVERSIDAD" ...
## $ Código.del.departamento.(IES) : chr [1:513900] "11" "11" "11" "11" ...
## $ Departamento.de.domicilio.de.la.IES : chr [1:513900] "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" ...
## $ Código.del.Municipio.(IES) : chr [1:513900] "11001" "11001" "11001" "11001" ...
## $ Municipio.de.domicilio.de.la.IES : chr [1:513900] "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" ...
## $ Código.SNIES.del.programa : num [1:513900] 3103 16947 16950 15 3 ...
## $ Programa.Académico : chr [1:513900] "GEOGRAFIA" "ESPECIALIZACION EN DERECHO CONSTITUCIONAL" "ESPECIALIZACION EN INSTITUCIONES JURIDICO-PROCESALES" "TRABAJO SOCIAL" ...
## $ ID.Nivel.Académico : num [1:513900] 1 2 2 1 1 2 2 1 2 1 ...
## $ Nivel.Académico : chr [1:513900] "PREGRADO" "POSGRADO" "POSGRADO" "PREGRADO" ...
## $ ID.Nivel.de.Formación : num [1:513900] 6 1 1 6 6 1 1 6 1 6 ...
## $ Nivel.de.Formación : chr [1:513900] "UNIVERSITARIA" "ESPECIALIZACION" "ESPECIALIZACION" "UNIVERSITARIA" ...
## $ ID.Metodología : num [1:513900] 1 1 1 1 1 1 1 1 1 1 ...
## $ Metodología : chr [1:513900] "PRESENCIAL" "PRESENCIAL" "PRESENCIAL" "PRESENCIAL" ...
## $ ID.Área : chr [1:513900] "5" "5" "5" "5" ...
## $ Área.de.Conocimiento : chr [1:513900] "CIENCIAS SOCIALES Y HUMANAS" "CIENCIAS SOCIALES Y HUMANAS" "CIENCIAS SOCIALES Y HUMANAS" "CIENCIAS SOCIALES Y HUMANAS" ...
## $ Id_Nucleo : chr [1:513900] "562" "559" "559" "569" ...
## $ Núcleo.Básico.del.Conocimiento.(NBC) : chr [1:513900] "GEOGRAFIA HISTORIA" "DERECHO Y AFINES" "DERECHO Y AFINES" "SOCIOLOGIA TRABAJO SOCIAL Y AFINES" ...
## $ Código.del.Departamento.(Programa) : chr [1:513900] "11" "11" "11" "11" ...
## $ Departamento.de.oferta.del.programa : chr [1:513900] "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" ...
## $ Código.del.Municipio.(Programa) : chr [1:513900] "11001" "11001" "11001" "11001" ...
## $ Municipio.de.oferta.del.programa : chr [1:513900] "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" "BOGOTA DC" ...
## $ ID.Sexo : num [1:513900] 2 2 2 2 2 1 2 2 2 2 ...
## $ Sexo : chr [1:513900] "MUJER" "MUJER" "MUJER" "MUJER" ...
## $ Año : num [1:513900] 2011 2009 2012 2012 2011 ...
## $ Semestre : num [1:513900] 2 2 1 2 1 2 2 2 2 2 ...
## $ Graduados : num [1:513900] 6 17 5 36 27 44 28 15 5 15 ...
## - attr(*, "spec")=
## .. cols(
## .. Código.de.la.Institución = col_double(),
## .. IES.PADRE = col_double(),
## .. `Institución.de.Educación.Superior.(IES)` = col_character(),
## .. Principal.o.Seccional = col_character(),
## .. ID.Sector.IES = col_double(),
## .. Sector.IES = col_character(),
## .. ID.Caracter = col_double(),
## .. Caracter.IES = col_character(),
## .. `Código.del.departamento.(IES)` = col_character(),
## .. Departamento.de.domicilio.de.la.IES = col_character(),
## .. `Código.del.Municipio.(IES)` = col_character(),
## .. Municipio.de.domicilio.de.la.IES = col_character(),
## .. Código.SNIES.del.programa = col_double(),
## .. Programa.Académico = col_character(),
## .. ID.Nivel.Académico = col_double(),
## .. Nivel.Académico = col_character(),
## .. ID.Nivel.de.Formación = col_double(),
## .. Nivel.de.Formación = col_character(),
## .. ID.Metodología = col_double(),
## .. Metodología = col_character(),
## .. ID.Área = col_character(),
## .. Área.de.Conocimiento = col_character(),
## .. Id_Nucleo = col_character(),
## .. `Núcleo.Básico.del.Conocimiento.(NBC)` = col_character(),
## .. `Código.del.Departamento.(Programa)` = col_character(),
## .. Departamento.de.oferta.del.programa = col_character(),
## .. `Código.del.Municipio.(Programa)` = col_character(),
## .. Municipio.de.oferta.del.programa = col_character(),
## .. ID.Sexo = col_double(),
## .. Sexo = col_character(),
## .. Año = col_double(),
## .. Semestre = col_double(),
## .. Graduados = col_double()
## .. )
## - attr(*, "problems")=<externalptr>
head(datos)
## # A tibble: 6 × 33
## Código.de.la.Instituc…¹ IES.PADRE Institución.de.Educa…² Principal.o.Seccional
## <dbl> <dbl> <chr> <chr>
## 1 1101 1101 UNIVERSIDAD NACIONAL … PRINCIPAL
## 2 1101 1101 UNIVERSIDAD NACIONAL … PRINCIPAL
## 3 1101 1101 UNIVERSIDAD NACIONAL … PRINCIPAL
## 4 1101 1101 UNIVERSIDAD NACIONAL … PRINCIPAL
## 5 1101 1101 UNIVERSIDAD NACIONAL … PRINCIPAL
## 6 1101 1101 UNIVERSIDAD NACIONAL … PRINCIPAL
## # ℹ abbreviated names: ¹Código.de.la.Institución,
## # ²`Institución.de.Educación.Superior.(IES)`
## # ℹ 29 more variables: ID.Sector.IES <dbl>, Sector.IES <chr>,
## # ID.Caracter <dbl>, Caracter.IES <chr>,
## # `Código.del.departamento.(IES)` <chr>,
## # Departamento.de.domicilio.de.la.IES <chr>,
## # `Código.del.Municipio.(IES)` <chr>, …
# Agrupar por año y sumar el total de graduados
# Convertir texto a número si es necesario
datos <- datos %>% mutate(Graduados = as.numeric(Graduados))
# Resumir por año
datos_resumidos <- datos %>%
group_by(Año) %>%
summarise(Total_Graduados = sum(Graduados, na.rm = TRUE))
# Crear el modelo de regresión con datos resumidos
modelo <- lm(Total_Graduados ~ Año, data = datos_resumidos)
summary(modelo)
##
## Call:
## lm(formula = Total_Graduados ~ Año, data = datos_resumidos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -48202 -27930 2129 27136 59775
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -43653289 2586422 -16.88 1.76e-12 ***
## Año 21855 1286 16.99 1.58e-12 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 33170 on 18 degrees of freedom
## Multiple R-squared: 0.9413, Adjusted R-squared: 0.938
## F-statistic: 288.6 on 1 and 18 DF, p-value: 1.578e-12
# Gráfico con línea ajustada y puntos por año
# Formato de ejes numéricos con separador de miles
ggplot(datos_resumidos, aes(x = Año, y = Total_Graduados)) +
geom_point(color = "blue", size = 3) +
geom_smooth(method = "lm", se = FALSE, color = "darkred", size = 1.5) +
scale_y_continuous(labels = comma) +
labs(title = "Evolución del Número de Graduados por Año",
x = "Año",
y = "Total de Graduados") +
theme_minimal() +
theme(plot.title = element_text(face = "bold", hjust = 0.5, size = 16),
axis.title = element_text(face = "bold", size = 12))
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## `geom_smooth()` using formula = 'y ~ x'
El análisis estadístico evidencia una clara tendencia ascendente en
el número de graduados en educación superior en Colombia durante los
últimos años.
La regresión lineal aplicada sobre los totales anuales muestra un patrón
de crecimiento constante, lo cual refleja el fortalecimiento del sistema
educativo y el aumento en la cobertura universitaria.
El modelo, con un ajuste lineal significativo, permite concluir que el
paso del tiempo ha influido de forma positiva en la formación
profesional del país.
Este tipo de análisis no solo permite evaluar el comportamiento
histórico, sino que también resulta útil para hacer proyecciones
futuras, identificar posibles estancamientos y apoyar decisiones de
política pública educativa basadas en evidencia.
anova(modelo)
## Analysis of Variance Table
##
## Response: Total_Graduados
## Df Sum Sq Mean Sq F value Pr(>F)
## Año 1 3.1764e+11 3.1764e+11 288.62 1.578e-12 ***
## Residuals 18 1.9810e+10 1.1005e+09
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Este análisis ANOVA permite confirmar estadísticamente la validez del modelo. El valor de p < 0.05 (extremadamente bajo) indica que existe una relación significativa entre el paso de los años y la cantidad total de graduados.