Este análisis se enfoca en los cursos y programas de formación ofrecidos por el SENA durante el periodo 2023-2024. A través de un conjunto de datos detallados, se busca comprender la distribución de la oferta educativa en diferentes en los niveles de formación y modalidades de impartición, así como su alcance y la participación de los aprendices según su género. Este estudio tiene como objetivo ofrecer una visión integral de cómo se organiza la formación técnica y tecnológica en la región, identificar las áreas con mayor demanda y detectar posibles brechas en la cobertura educativa, especialmente en zonas rurales y en sectores menos representados. A partir de estos datos, se pueden formular recomendaciones para mejorar la equidad en el acceso a la educación y alinear la oferta educativa con las necesidades del mercado laboral y los retos sociales actuales.
Analizar la distribución y características de la oferta de formación del SENA, identificando tendencias, patrones y brechas en función de variables como modalidad, nivel de formación, género y ubicación geográfica dentro del Atlántico. Este estudio busca comprender cómo se organiza la formación técnica y tecnológica, detectar áreas de alta demanda y proponer mejoras en la cobertura educativa para lograr una mayor equidad territorial.
Describir la concentración de cursos y aprendices, resaltando los sectores con mayor y menor cobertura formativa.
Examinar la distribución de la modalidad de formación (presencial, virtual, a distancia) en los distintos niveles educativos.
Analizar las diferencias de participación por género en los niveles de formación ofrecidos.
Identificar la distribución geográfica de la oferta educativa por municipio, destacando patrones de concentración o dispersión.
Proporcionar visualizaciones claras y comentadas que permitan apoyar la toma de decisiones en la planeación y optimización de la oferta educativa.
df_filtrado <- df %>%
filter(!is.na(ANIO)) %>% # Elimina NAs en año
filter(ANIO %in% c(2023, 2024)) %>% # Solo 2023 y 2024
filter(!is.na(NIVEL_FORMACION)) %>% # Solo niveles válidos
filter(!is.na(TOTAL_APRENDICES)) # Sin NAs en conteo
# ================================
#⃣ Agrupar por año y nivel
# ================================
resumen <- df_filtrado %>%
group_by(ANIO, NIVEL_FORMACION) %>% # Agrupar por año y nivel de formación
summarise(
TOTAL_APRENDICES = sum(TOTAL_APRENDICES, na.rm = TRUE), # Sumar total de aprendices
.groups = "drop"
)
ggplot(resumen, aes(
x = NIVEL_FORMACION,
y = TOTAL_APRENDICES,
fill = as.factor(ANIO)
)) +
geom_col(position = "dodge", width = 0.7) + # Barras lado a lado
geom_text(
aes(label = scales::number(TOTAL_APRENDICES, big.mark = ".")), # Etiquetas con separador de miles con punto
position = position_dodge(width = 0.7),
vjust = -0.5,
size = 3.5
) +
scale_fill_manual(
values = c("2023" = "#54A676", "2024" = "#6BBCC0"), # Colores personalizados por año
name = "Año"
) +
labs(
title = "Comparación de Aprendices por Nivel de Formación (2023 vs 2024)", # Título del gráfico
x = "Nivel de Formación", # Eje X
y = "Total de Aprendices" # Eje Y
) +
scale_y_continuous(labels = scales::number_format(big.mark = ".")) + # Eje Y con separador de miles con punto
theme_minimal(base_size = 13) + # Tema limpio
theme(
plot.title = element_text(hjust = 0.5, face = "bold", size = 16), # Estilo del título
axis.text.x = element_text(angle = 45, hjust = 1) # Rotación de etiquetas en eje X
)El análisis comparativo entre los años 2023 y 2024 muestra una gran disparidad en la cantidad de aprendices según el nivel de formación, destacando “Curso Especial” como el programa de formación con mayor demanda. En 2024, se registraron 116.614 aprendices en este programa, mientras que en 2023, hubo un decremento a 124.817, lo que representa una caída de 8.203 aprendices, es decir, un 7% de decrecimiento.
Por otro lado, el programa “Técnico” también muestra una disminución notable de aprendices, de 12.979 en 2023 a 5.338 en 2024, con una caída de 7.641 aprendices.
En comparación, los programas como “Evento” para el 2023 con 3.442 aprendices, aumentaron a 3.986 en 2024, presentando un leve aumento de 544 aprendices, equivalente a un 16% de incremento. Sin embargo, “Tecnólogo” muestra una caída significativa, pasando de 1.807 aprendices en 2023 a 2.329 en 2024, con un aumento de 522 aprendices.
En términos generales, los programas más populares siguen siendo los de corta duración, como Curso Especial, lo que refleja una preferencia por la formación rápida y accesible. Aunque la formación técnica muestra una disminución, los programas más especializados o avanzados, como “Tecnólogo”, están experimentando un pequeño crecimiento.
En resumen, 2024 ha mostrado un crecimiento general en algunos programas, especialmente en la formación técnica y de curso especial, mientras que las especializaciones más profundas han enfrentado una ligera disminución.
library(scales) # Cargar el paquete 'scales' para usar la función 'comma()'
ggplot(
conteo_sector, # El dataframe que contiene los datos
aes(
x = reorder(NOMBRE_SECTOR_PROGRAMA, -Total), # Ordena los sectores del programa de mayor a menor por 'Total'
y = Total, # Define la variable que se graficará en el eje Y (Total)
fill = NOMBRE_SECTOR_PROGRAMA # Asigna un color distinto a cada sector del programa
)
) +
geom_bar(stat = "identity", width = 0.7) + # Crea las barras del gráfico, 'stat = "identity"' usa los valores de 'Total' directamente
# Definir una paleta de colores personalizada para las barras
scale_fill_manual(values = c(
"#0F3548", "#54A676", "#CE3031", "#F0B034",
"#6BBCC0", "#24428B", "#88C9CD", "#A6D8D9",
"#C5E4E6", "#333333", "#C7C9C8",
"#7DA99D", "#EDC774", "#A44A3F", "#6D8EA0",
"#BFD3C1", "#F2C57C", "#A26769", "#779CAB",
"#D4D9D7", "#EAD8C0"
)) +
# Agregar etiquetas de texto encima de las barras para mostrar el valor de 'Total' con puntos
geom_text(
aes(label = scales::number(Total, big.mark = ".")), # Formatea los números con punto como separador de miles
vjust = -0.3, # Ajusta la posición vertical de las etiquetas (por encima de las barras)
size = 3.5, # Tamaño de las etiquetas
fontface = "bold", # Pone las etiquetas en negrita
color = "black" # Establece el color de las etiquetas como negro
) +
# Añadir títulos y etiquetas a los ejes
labs(
title = "Distribución por sector del programa", # Título principal del gráfico
x = "Nombre del sector del programa", # Etiqueta del eje X
y = "Cantidad de cursos", # Etiqueta del eje Y
fill = "Sector" # Título de la leyenda
) +
# Formatear eje Y con punto como separador de miles
scale_y_continuous(labels = scales::number_format(big.mark = ".")) +
# Establecer tema y formato del gráfico
theme_minimal() + # Usa el tema minimalista
theme(
axis.text.x = element_text(angle = 45, hjust = 1), # Rota las etiquetas del eje X 45 grados para evitar que se sobrepongan
plot.title = element_text(hjust = 0.5, face = "bold", size = 16), # Centra y pone en negrita el título del gráfico
legend.title = element_text(face = "bold"), # Pone en negrita el título de la leyenda
legend.text = element_text(size = 10) # Ajusta el tamaño de las etiquetas en la leyenda
)La gráfica muestra una distribución clara de los programas ofrecidos por el SENA según sectores. En primer lugar, el sector de Servicios destaca con la mayor cantidad de cursos, alcanzando 3.251 cursos, lo que representa el 49,3% del total de la oferta educativa en la gráfica. En segundo lugar, el sector de Industria presenta 1.647 cursos, equivalente al 25,0% de los programas ofrecidos. El sector Comercio sigue con 678 cursos, que constituyen el 10,3% de la oferta total.
Por otro lado, los sectores con menor cantidad de cursos incluyen Textiles con 10 cursos, Educación con 5 y Transporte también con 5. Estos sectores representan apenas el 0,2% de la oferta educativa cada uno. Sectores como Primario y Extractivo (73 cursos), EDT (30 cursos) y Electrificación (118 cursos) se encuentran en una posición intermedia, con porcentajes del 1,1%, 0,5% y 1,8% respectivamente.
En resumen, los sectores más representados en términos de programas educativos son Servicios e Industria, con 49,3% y 25,0% de la oferta, mientras que los sectores con menor representación, como Textiles, Educación y Transporte, tienen una participación marginal de menos del 1% cada uno. Esto demuestra una concentración de la oferta educativa en sectores más demandados y una menor especialización en áreas como los sectores textiles y educativos.
library(scales)
tabla_resumen <- df %>%
group_by(NOMBRE_JORNADA, NIVEL_FORMACION) %>%
summarise(Frecuencia = n()) %>%
ungroup()
ggplot(tabla_resumen, aes(x = NOMBRE_JORNADA, y = Frecuencia, fill = NIVEL_FORMACION)) +
# Barras agrupadas
geom_bar(stat = "identity", position = position_dodge(width = 0.9), width = 0.9) +
# Etiquetas de texto con las cantidades y formato con punto como separador de miles
geom_text(
aes(label = scales::number(Frecuencia, big.mark = ".")), # Formato de punto como separador de miles
position = position_dodge(width = 0.9),
vjust = -0.3,
size = 3.5
) +
# Paleta personalizada
scale_fill_manual(values = c(
"#0F3548", "#54A676", "#CE3031", "#F0B034",
"#6BBCC0", "#24428B", "#88C9CD", "#A6D8D9",
"#C5E4E6", "#333333", "#C7C9C8",
"#7DA99D", "#EDC774", "#A44A3F", "#6D8EA0",
"#BFD3C1", "#F2C57C", "#A26769", "#779CAB",
"#D4D9D7", "#EAD8C0"
)) +
# Títulos y etiquetas
labs(
title = "Comportamiento de las jornadas de formación",
x = "Nombre de Jornada",
y = "Cantidad de Aprendices",
fill = "Nivel de Formación"
) +
# Formato del eje Y con punto como separador de miles
scale_y_continuous(labels = scales::number_format(big.mark = ".")) +
# Tema del gráfico
theme_minimal()El gráfico revela una clara preferencia por la jornada Mixta, con un total de 5.530 aprendices, distribuida entre los diferentes niveles de formación de la siguiente manera: 4.947 en Curso Especial, 41 en Evento, 387 en Técnico y 155 en Tecnólogo. Este predominio de la jornada Mixta refleja que los aprendices se sienten más atraídos por esta modalidad, posiblemente por la flexibilidad que ofrece, al combinar sesiones presenciales y a distancia. Además, el hecho de que el Curso Especial sea el nivel con más participantes (4.947) sugiere que las formaciones de corta duración y charlas son altamente demandadas, lo que indica que los estudiantes prefieren opciones educativas menos extensas o con enfoques más específicos. Las formaciones cortas también son atractivas para aquellos que buscan adquirir habilidades puntuales sin comprometerse a programas más largos, como los niveles Técnico o Tecnólogo.
En comparación, las demás jornadas tienen una participación significativamente menor. La jornada Diurna tiene 280 aprendices distribuidos entre Técnico (280), Evento (37), Curso Especial (2), Tecnólogo (2) y Especialización Tecnológica (1). La jornada Madrugada cuenta con 133 aprendices en Curso Especial, 72 en Técnico y 5 en Tecnólogo, lo que refleja un interés considerablemente más bajo en las modalidades de madrugada. Finalmente, la jornada Nocturna tiene apenas 9 aprendices en Técnico y 3 en Tecnólogo, lo que indica que esta modalidad no atrae a un número significativo de estudiantes.
Este patrón sugiere que la jornada Mixta no solo es preferida por los estudiantes, sino que el nivel Curso Especial acapara una parte considerable de la oferta educativa, probablemente por la flexibilidad y la corta duración de los cursos, lo que se alinea con las necesidades de aprendizaje de los estudiantes. Las demás jornadas, como la Diurna, Madrugada y Nocturna, presentan una participación mucho más baja, lo que podría indicar una oferta más limitada o menos atractiva en estos horarios
library(scales) # Cargar el paquete 'scales' para usar funciones de formato numérico
df %>%
group_by(MODALIDAD_FORMACION) %>% # Agrupar los datos por la columna 'MODALIDAD_FORMACION'
summarise(
TOTAL_MASCULINOS = sum(TOTAL_APRENDICES_MASCULINOS, na.rm = TRUE), # Calcular el total de aprendices masculinos, omitiendo los NAs
TOTAL_FEMENINOS = sum(TOTAL_APRENDICES_FEMENINOS, na.rm = TRUE) # Calcular el total de aprendices femeninos, omitiendo los NAs
) %>%
pivot_longer(
cols = c(TOTAL_MASCULINOS, TOTAL_FEMENINOS), # Transformar las columnas de género en una sola columna
names_to = "GENERO", # La nueva columna será llamada 'GENERO'
values_to = "TOTAL_APRENDICES" # Los valores se pondrán en una nueva columna llamada 'TOTAL_APRENDICES'
) %>%
ggplot(aes(x = MODALIDAD_FORMACION, y = TOTAL_APRENDICES, fill = GENERO)) + # Crear gráfico con 'MODALIDAD_FORMACION' en eje X, 'TOTAL_APRENDICES' en eje Y y color basado en 'GENERO'
# Barras agrupadas lado a lado
geom_bar(stat = "identity", position = position_dodge(width = 0.8), width = 0.7) +
# Etiquetas de números ENCIMA de las barras con punto como separador de miles
geom_text(
aes(label = scales::number(TOTAL_APRENDICES, big.mark = ".")), # Formato con punto como separador de miles
position = position_dodge(width = 0.8),
vjust = -0.4,
size = 4,
color = "black",
fontface = "bold"
) +
# Colores personalizados (aquamarina y verde pastel)
scale_fill_manual(
values = c(
"TOTAL_MASCULINOS" = "#7FFFD4", # Color aquamarina para los masculinos
"TOTAL_FEMENINOS" = "#6BBCC0" # Color verde pastel para los femeninos
),
labels = c("Masculino", "Femenino") # Etiquetas para la leyenda
) +
# Títulos y etiquetas
labs(
title = "Total de aprendices por género y modalidad de formación",
x = "Modalidad de formación",
y = "Total de Aprendices",
fill = "Género"
) +
# Formato del eje Y con punto como separador de miles
scale_y_continuous(labels = scales::number_format(big.mark = ".")) +
# Tema minimalista con ajustes
theme_minimal(base_size = 13) +
theme(
plot.title = element_text(hjust = 0.5, face = "bold", size = 16),
axis.text.x = element_text(angle = 45, hjust = 1),
axis.title.x = element_text(face = "bold"),
axis.title.y = element_text(face = "bold"),
legend.title = element_text(face = "bold"),
legend.text = element_text(size = 11)
)La grafica del total de aprendices por género y modalidad de formación (Incluyendo cursos especiales y eventos) revela patrones de preferencia interesantes. La modalidad virtual es la más popular, con 176.676 estudiantes en total, distribuidos en 94.701 hombres y 81.975 mujeres, lo que muestra una ligera mayoría masculina (53.6%) frente a las mujeres (46.4%). Esto refleja que la educación virtual atrae a ambos géneros, siendo particularmente atractiva por su flexibilidad y accesibilidad. En la modalidad presencial, la participación femenina es mucho mayor, con 64.185 mujeres frente a 30.418 hombres, lo que representa el 67.8% de estudiantes mujeres frente al 32.2% de hombres, lo que sugiere que los programas presenciales son más atractivos para las mujeres, posiblemente debido a la interacción directa y la estructura tradicional de estas formaciones. Por otro lado, la modalidad a distancia muestra una participación marginal, con solo 39 estudiantes en total (25 hombres y 14 mujeres), lo que representa el 0.02% del total general, lo que sugiere que esta modalidad no tiene la misma atracción ni relevancia que las otras. En conclusión, la modalidad virtual es la preferida en general, con una ligera mayoría de hombres, mientras que la modalidad presencial sigue siendo significativa, especialmente entre las mujeres. La modalidad a distancia, aunque marginal, podría beneficiarse de una revisión de su estructura para aumentar su atractivo entre los estudiantes.
df %>%
group_by(NOMBRE_MUNICIPIO_CURSO) %>% # Agrupar por municipio
summarise(TOTAL_APRENDICES = sum(TOTAL_APRENDICES, na.rm = TRUE)) %>% # Sumar aprendices por municipio
arrange(desc(TOTAL_APRENDICES)) %>% # Ordenar de mayor a menor cantidad
# Iniciar gráfico ggplot
ggplot(aes(
x = reorder(NOMBRE_MUNICIPIO_CURSO, TOTAL_APRENDICES), # Reordenar eje X según total
y = TOTAL_APRENDICES, # Altura de barras
fill = NOMBRE_MUNICIPIO_CURSO # Color por municipio
)) +
geom_col(width = 0.7) + # Barras con ancho moderado para claridad
# Etiquetas de texto con números encima de las barras
geom_text(
aes(label = number(TOTAL_APRENDICES, big.mark = ".", decimal.mark = ",")), # Mostrar total con punto en miles y coma en decimales
hjust = -0.2, # Ajustar más afuera para que no se corten
size = 4,
color = "black",
fontface = "bold"
) +
coord_flip() + # Voltear para barras horizontales
# Aplicar paleta de colores personalizada extendida
scale_fill_manual(values = c(
"#0F3548", "#54A676", "#CE3031", "#F0B034",
"#6BBCC0", "#24428B", "#88C9CD", "#A6D8D9",
"#C5E4E6", "#333333", "#C7C9C8",
"#7DA99D", "#EDC774", "#A44A3F", "#6D8EA0",
"#BFD3C1", "#F2C57C", "#A26769", "#779CAB",
"#D4D9D7", "#EAD8C0"
)) +
# Ajustar expansión del eje Y para espacio a las etiquetas
scale_y_continuous(
expand = expansion(mult = c(0, 0.3)), # Espacio adicional
labels = number_format(big.mark = ".", decimal.mark = ",") # Formato eje Y con punto para miles y coma para decimales
) +
# Etiquetas y títulos del gráfico
labs(
title = "Municipios con mayor cantidad de aprendices",
x = "Municipio",
y = "Total de aprendices"
) +
# Tema minimalista
theme_minimal(base_size = 12) +
theme(
plot.title = element_text(hjust = 0.5, face = "bold", size = 16), # Centrar y resaltar el título
axis.text.y = element_text(size = 11), # Tamaño texto eje Y
axis.text.x = element_text(size = 11), # Tamaño texto eje X
axis.title.x = element_text(face = "bold", size = 12), # Negrita en etiquetas de eje
axis.title.y = element_text(face = "bold", size = 12), # Negrita en etiquetas de eje
legend.position = "none", # Sin leyenda innecesaria
plot.margin = margin(r = 150)) # Aumentar el margen derecho para evitar corte de etiquetaEl gráfico presenta una notable disparidad en la distribución de aprendices entre los municipios, con Barranquilla destacándose de manera sobresaliente al contar con 247.140 estudiantes, lo que representa una cifra significativamente mayor que cualquier otro municipio en la lista. Esta diferencia subraya el hecho de que Barranquilla, como ciudad principal y centro urbano, concentra la mayor parte de la población estudiantil de la región.
El municipio de Malambo, con 10.310 aprendices, ocupa el segundo lugar, pero la brecha con Barranquilla es considerable, mostrando que aún los municipios cercanos a la capital no tienen una participación comparativa en términos de estudiantes. A continuación, Soledad se sitúa con 6.828 aprendices, también destacándose en el contexto local, aunque sigue estando lejos de los números de Barranquilla y Malambo.
Los municipios de Palmar de Varela (947), Luruaco (882), Puerto Colombia (801) y Galapa (753) tienen cifras de aprendices relativamente bajas, lo que sugiere que, aunque forman parte del área metropolitana, su capacidad educativa en términos de estudiantes es mucho más limitada. Estos municipios, si bien contribuyen al total de aprendices, no alcanzan una participación significativa en comparación con los más grandes.
Municipios como Sabanalarga (747), Repelón (581), Campo de la Cruz (481) y Sabanagrande (471) tienen un número aún menor de aprendices, lo que refleja su menor tamaño y una oferta educativa más reducida en comparación con los municipios más grandes. Este patrón continúa con municipios como Ponedere (170), Suan (97), Tubará (59), Piojó (50) y Juan de Acosta (35), que tienen una representación aún más pequeña en términos de estudiantes.
Por último, Usiacurí se destaca como el municipio con la menor cantidad de aprendices, con solo 10, lo que refleja una participación muy marginal en el total regional. Este dato resalta la desigualdad en la distribución de los aprendices y sugiere que los municipios más pequeños enfrentan limitaciones significativas en términos de infraestructura educativa y acceso a oportunidades de formación.
En conclusión, la distribución de los aprendices está profundamente concentrada en Barranquilla, mientras que otros municipios como Malambo y Soledad tienen una participación considerable pero mucho más reducida. La disparidad entre los municipios más grandes y los más pequeños destaca la necesidad de fortalecer la infraestructura educativa en las zonas rurales y de menor tamaño, para reducir las brechas en el acceso a la educación en la región.
library(scales)
# Filtrar los registros para excluir "curso especial" y "evento"
df_filtrado <- df %>%
filter(!(NIVEL_FORMACION %in% c("CURSO ESPECIAL", "EVENTO"))) # Excluir 'curso especial' y 'evento'
# Agrupar los datos por nivel de formación y contar la cantidad de registros por cada nivel
conteo_nivel <- df_filtrado %>%
group_by(NIVEL_FORMACION) %>% # Agrupar por nivel de formación
summarise(TOTAL_PROGRAMAS = n()) %>% # Contar los programas en cada nivel
arrange(desc(TOTAL_PROGRAMAS)) # Ordenar de mayor a menor cantidad
# Crear el gráfico de barras
ggplot(conteo_nivel, aes(x = reorder(NIVEL_FORMACION, -TOTAL_PROGRAMAS), # Reordenar el eje X
y = TOTAL_PROGRAMAS, # Total de programas en eje Y
fill = NIVEL_FORMACION)) + # Asignar color a las barras
geom_bar(stat = "identity", width = 0.7) + # Barras con un ancho de 0.7
geom_text(aes(label = number(TOTAL_PROGRAMAS, big.mark = ".", decimal.mark = ",")), # Etiquetas con formato
vjust = -0.3, # Ubicación de las etiquetas
size = 3.5) + # Tamaño del texto
scale_fill_brewer(palette = "Pastel1") + # Usar una paleta pastel para las barras
scale_y_continuous(labels = number_format(big.mark = ".", decimal.mark = ",")) + # Formato del eje Y
labs(title = "Distribución de programas por nivel de formación", # Título
x = "Nivel de formación", # Etiqueta eje X
y = "Cantidad de programas", # Etiqueta eje Y
fill = "Nivel de formación") + # Leyenda
theme_minimal(base_size = 12) + # Tema minimalista
theme(axis.text.x = element_text(angle = 45, hjust = 1)) # Rotar las etiquetas en el eje XEl gráfico muestra la distribución de programas educativos por nivel de formación, destacando tres categorías principales: Técnico, Tecnólogo y Especialización Tecnológica. El nivel Técnico representa la mayoría de los programas, con un total de 748 cursos, lo que indica que la oferta educativa se concentra principalmente en esta modalidad, probablemente debido a la naturaleza práctica de los programas técnicos. El nivel Tecnólogo sigue con 165 programas, una cantidad considerablemente menor que el nivel técnico, lo que refleja una oferta educativa más moderada, pero aún significativa. En cuanto a la Especialización Tecnológica, solo se observa 1 programa, lo que resalta su carácter altamente especializado y limitado, dirigido a profesionales que buscan profundizar en un área específica. En resumen, el gráfico revela que la formación técnica es la más prevalente, mientras que los niveles tecnológicos y de especialización tienen una oferta educativa considerablemente más pequeña.
df_filtrado <- df %>%
filter(grepl("TÉCNICO|TECNÓLOGO", NIVEL_FORMACION, ignore.case = TRUE))
# Contar top 10 programas más ofertados
top_programas <- df_filtrado %>%
count(NOMBRE_PROGRAMA_FORMACION, name = "TOTAL_CURSOS") %>%
arrange(desc(TOTAL_CURSOS)) %>%
slice_head(n = 10)
# Gráfico de barras verticales con etiquetas de datos y nombres
ggplot(top_programas, aes(x = reorder(NOMBRE_PROGRAMA_FORMACION, TOTAL_CURSOS), y = TOTAL_CURSOS, fill = NOMBRE_PROGRAMA_FORMACION)) +
geom_bar(stat = "identity", width = 0.8) + # Barras verticales
geom_text(
aes(label = TOTAL_CURSOS), # Mostrar la cantidad de cursos encima de las barras
vjust = -0.3, # Coloca las etiquetas encima de las barras
size = 4, # Tamaño de la fuente
fontface = "bold", # Negrita en las etiquetas
color = "black" # Color de las etiquetas
) +
scale_fill_brewer(palette = "Set3") + # Paleta de colores suaves
labs(
title = "Top 10 Programas Más Ofertados",
x = "Programa de Formación",
y = "Cantidad de Cursos Registrados"
) +
theme_minimal() + # Estilo minimalista
theme(
axis.text.x = element_text(angle = 45, hjust = 1), # Etiquetas del eje X rotadas para mejorar legibilidad
axis.text.y = element_text(size = 12), # Tamaño de texto en el eje Y
axis.title.x = element_text(face = "bold", size = 14), # Títulos más destacados
axis.title.y = element_text(face = "bold", size = 14),
plot.title = element_text(hjust = 0.5, size = 16, face = "bold"),
plot.margin = margin(1, 1, 1, 2) # Margen ajustado para espacio
)El gráfico muestra los Top 10 Programas Más Ofertados, destacando una clara concentración de cursos en áreas técnicas y tecnológicas. El programa más registrado es Sistemas, con 101 cursos registrados, lo que refleja la creciente demanda de formación en tecnología, específicamente en sistemas informáticos, programación y desarrollo de software. En un contexto donde la digitalización y la dependencia tecnológica son cada vez mayores, programas como Sistemas resultan esenciales para satisfacer la necesidad de profesionales capaces de diseñar, implementar y gestionar sistemas informáticos tanto en el ámbito empresarial como en el desarrollo de productos digitales.
A continuación, Mecánica de Maquinaria Industrial (62 cursos registrados) resalta como una opción de formación importante en el sector industrial, especialmente en áreas como la manufactura, la construcción y la maquinaria pesada. Este tipo de programas muestra el interés en formar profesionales capacitados en el mantenimiento y operación de maquinaria, lo que es clave para la eficiencia operativa de empresas industriales. Del mismo modo, Mantenimiento de Equipos de Refrigeración, Ventilación y Climatización (60 cursos) y Mantenimiento de Equipos de Cómputo (59 cursos) reflejan la necesidad de habilidades técnicas especializadas en el mantenimiento de equipos fundamentales tanto en la industria como en el hogar, lo que evidencia la relevancia de estas formaciones en un mundo que depende enormemente de la tecnología y los sistemas de climatización.
Otro programa destacado es Instalación de Sistemas Eléctricos Residenciales y Comerciales (57 cursos), que subraya la importancia de la formación en el área de electricidad, particularmente en el contexto de la construcción y la modernización de infraestructuras tanto residenciales como comerciales. La electrificación es un componente esencial en el desarrollo urbano, y la alta oferta de programas en este ámbito refleja la demanda continua por profesionales capacitados en la instalación y mantenimiento de sistemas eléctricos.
Programación de Software (55 cursos) también se posiciona como un área clave, lo que refleja el creciente interés por desarrollar aplicaciones y sistemas informáticos. En una era donde las aplicaciones tecnológicas son fundamentales para la gestión de empresas, el comercio electrónico, y otros sectores, la formación en programación sigue siendo una de las más solicitadas. Igualmente, Procesos de Manufactura (53 cursos) refleja la necesidad de formar profesionales capacitados en técnicas de producción industrial, fundamentales para la eficiencia en la fabricación de productos.
A pesar de su menor cantidad de cursos, programas como Análisis y Desarrollo de Software (30 cursos) y Análisis de Muestra Química (24 cursos) siguen siendo importantes, aunque con un enfoque más especializado. Estos cursos se dirigen a nichos específicos dentro del ámbito científico y tecnológico, donde la demanda está más focalizada pero sigue siendo vital para sectores como el análisis de datos y la investigación.
Soldadura de Productos Metálicos en Plata (35 cursos) es otro programa especializado que refleja la necesidad de habilidades avanzadas en procesos de soldadura, esenciales en industrias como la joyería, fabricación de maquinaria y la construcción de estructuras metálicas. Finalmente, Jefes de Área para Trabajo en Alturas (28 cursos) subraya la importancia de la seguridad en el trabajo, especialmente en sectores de construcción y minería, donde el trabajo en alturas es común y la formación en seguridad es crucial para prevenir accidentes laborales.
En conclusión, el gráfico refleja una fuerte demanda por formación técnica y profesional en áreas claves como Sistemas, Mantenimiento y Electromecánica, lo que subraya la necesidad de formar profesionales capacitados en sectores fundamentales para el desarrollo económico y social. Mientras que algunos programas son altamente demandados debido a la tendencia hacia la digitalización y la industrialización, otros, aunque más específicos, siguen siendo esenciales en nichos clave. Esto demuestra una clara orientación hacia la capacitación técnica, lo cual es vital para satisfacer las crecientes necesidades del mercado laboral actual y futuro.
library(scales)
# Filtrar los datos para excluir "EVENTO" y "curso especial"
df_filtrado <- df %>%
filter(!(NIVEL_FORMACION %in% c("EVENTO", "CURSO ESPECIAL"))) # Excluye 'evento' y 'curso especial' de la columna NIVEL_FORMACION
# Agrupar por nivel de formación y modalidad, y contar el número de registros
tabla_niveles_modalidades <- df_filtrado %>%
count(NIVEL_FORMACION, MODALIDAD_FORMACION)
# Crear gráfico de barras agrupadas con etiquetas de cantidades
ggplot(tabla_niveles_modalidades, aes(
x = NIVEL_FORMACION, # Eje X: Nivel de formación (Técnico, Tecnólogo, etc.)
y = n, # Altura de la barra: cantidad de cursos (variable 'n')
fill = MODALIDAD_FORMACION # Color: Modalidad de formación (Presencial, Virtual, etc.)
)) +
# Barras agrupadas
geom_bar(
stat = "identity", # Usar valores reales para las barras, no estadísticas
position = position_dodge(width = 0.8), # Agrupar barras lado a lado
width = 0.7 # Ancho de las barras
) +
# Etiquetas de cantidad sobre cada barra con punto como separador de miles
geom_text(
aes(label = number(n, big.mark = ".", decimal.mark = ",")), # Texto = cantidad de cursos, con punto en miles y coma en decimales
position = position_dodge(width = 0.8), # Igual que las barras para alinear bien
vjust = -0.3, # Ubicación vertical de las etiquetas (arriba de las barras)
size = 4.2, # Tamaño del texto de las etiquetas
color = "black", # Color del texto de las etiquetas
fontface = "bold" # Texto en negrita para mejor visibilidad
) +
# Etiquetas y leyenda
labs(
title = "Relación entre Nivel de Formación y Modalidad", # Título principal del gráfico
x = "Nivel de formación", # Etiqueta del eje X
y = "Cantidad de cursos", # Etiqueta del eje Y
fill = "Modalidad de formación" # Título de la leyenda
) +
# Paleta de colores suaves y distintos para las barras
scale_fill_brewer(palette = "Set2") +
# Formato del eje Y con punto en miles y coma en decimales
scale_y_continuous(labels = number_format(big.mark = ".", decimal.mark = ",")) + # Etiquetas del eje Y con el mismo formato
# Tema minimalista y limpio para el gráfico
theme_minimal(base_size = 13) + # Tema base con tamaño de texto de 13
theme(
plot.title = element_text(hjust = 0.5, face = "bold", size = 16), # Centrar y resaltar el título del gráfico
axis.text.x = element_text(angle = 45, hjust = 1), # Rotar etiquetas del eje X a 45 grados para mejor visibilidad
legend.title = element_text(face = "bold") # Poner el título de la leyenda en negrita
)El gráfico revela la distribución de programas por nivel de formación y modalidad, destacando las diferencias en la oferta educativa. En el nivel de Especialización, todos los programas se ofrecen exclusivamente a distancia, lo que refleja una modalidad flexible adaptada a profesionales que buscan especializarse sin necesidad de asistir a clases presenciales. En el nivel Técnico, la gran mayoría de los programas son presenciales (734 cursos), con solo 14 programas virtuales, lo que indica que la formación técnica sigue requiriendo una fuerte componente práctica que la modalidad presencial puede ofrecer. En contraste, en el nivel Tecnológico, la modalidad presencial también predomina, con 120 programas presenciales, pero hay una proporción notable de programas virtuales (45 cursos), lo que sugiere un mayor grado de flexibilidad y la capacidad de adaptar estos programas a plataformas en línea. En general, el gráfico muestra una clara preferencia por la modalidad presencial, especialmente en los niveles más prácticos como Técnico, mientras que los niveles especializados y tecnológicos comienzan a incorporar más opciones virtuales, reflejando una tendencia hacia la educación a distancia.
# Agrupar por Nivel de Formación, excluir Curso Especial y Evento, y sumar el total de aprendices
df_nivel <- df %>%
filter(!NIVEL_FORMACION %in% c("CURSO ESPECIAL", "EVENTO")) %>% # Excluir Curso Especial y Evento
group_by(NIVEL_FORMACION) %>% # Agrupamos los datos por la columna 'NIVEL_FORMACION'
summarise(Total_Aprendices = sum(TOTAL_APRENDICES, na.rm = TRUE)) # Calculamos la suma total de aprendices por nivel de formación, ignorando valores NA
# Calcular el porcentaje de aprendices por nivel de formación
df_nivel <- df_nivel %>%
mutate(Porcentaje = Total_Aprendices / sum(Total_Aprendices) * 100) # Calculamos el porcentaje para cada nivel de formación
# Gráfico de pastel
ggplot(df_nivel, aes(x = "", y = Total_Aprendices, fill = NIVEL_FORMACION)) +
geom_bar(stat = "identity", width = 1) + # Crear las barras del pastel
coord_polar(theta = "y") + # Convertir a gráfico de pastel
labs(title = "Distribución de Aprendices por Nivel de Formación") + # Título del gráfico
theme_void() + # Quitar ejes y fondo
scale_fill_brewer(palette = "Set3") + # Paleta de colores suave
geom_text(
aes(label = paste0(format(round(Porcentaje, 1), decimal.mark = ","), "%")), # Etiquetas con porcentaje y coma como separador decimal
position = position_stack(vjust = 0.5), # Centrar etiquetas dentro de cada segmento
color = "black", # Color del texto
size = 4, # Tamaño del texto
fontface = "bold" # Texto en negrita
)El gráfico de pastel muestra la distribución de aprendices por nivel de formación, excluyendo Curso Especial y Evento. En cuanto a los porcentajes de los niveles de formación, Técnico es el nivel más popular, con 81,4% de los aprendices, lo que indica que la mayoría de los estudiantes prefieren este tipo de formación, que es crucial para adquirir habilidades especializadas y demandas del mercado laboral. Tecnólogo ocupa el segundo lugar con 18,4%, lo que muestra que, aunque tiene una participación significativa, está muy por debajo del nivel técnico en cuanto a cantidad de estudiantes. Finalmente, Especialización Tecnológica tiene una representación mínima, con solo 0,2%, lo que refleja una casi nula oferta o demanda en este nivel de formación, indicando que los programas de especialización tecnológica son muy limitados o altamente especializados. Este gráfico resalta la gran preferencia por los programas técnicos, mientras que los niveles de Tecnólogo y Especialización Tecnológica siguen siendo marginales, reflejando una tendencia hacia la formación técnica en comparación con opciones más avanzadas.
library(scales) # Cargar el paquete 'scales' para formatear números con separador de miles y decimales
# Agrupar los datos por Nivel de Formación y calcular el total de aprendices por género, excluyendo Curso Especial y Evento
df_nivel_genero <- df %>%
filter(!NIVEL_FORMACION %in% c("CURSO ESPECIAL", "EVENTO")) %>% # Excluir Curso Especial y Evento
group_by(NIVEL_FORMACION) %>% # Agrupamos por la columna 'NIVEL_FORMACION'
summarise(
Total_Masculinos = sum(TOTAL_APRENDICES_MASCULINOS, na.rm = TRUE), # Calcular total de aprendices masculinos
Total_Femeninos = sum(TOTAL_APRENDICES_FEMENINOS, na.rm = TRUE) # Calcular total de aprendices femeninos
)
# Reestructurar los datos a formato largo para usar en el gráfico
df_nivel_genero_long <- df_nivel_genero %>%
gather(
key = "Genero", # Nueva columna que indica el género
value = "Total_Aprendices", # Valores asociados a cada género
Total_Masculinos, Total_Femeninos # Columnas a pivotear
)
# Crear gráfico de barras agrupadas con etiquetas
ggplot(df_nivel_genero_long, aes(
x = reorder(NIVEL_FORMACION, -Total_Aprendices), # Ordenar niveles por total de aprendices (de mayor a menor)
y = Total_Aprendices, # Altura de las barras según el total
fill = Genero # Colorear barras según género
)) +
geom_bar(
stat = "identity", # Usar los valores reales (no proporciones)
position = position_dodge(width = 0.9), # Separar barras por género
width = 0.7 # Ancho de barra moderado
) +
# Añadir etiquetas encima de las barras con formato miles "." y decimales ","
geom_text(
aes(label = number(Total_Aprendices, big.mark = ".", decimal.mark = ",")), # Formato personalizado de número
position = position_dodge(width = 0.9), # Alinear las etiquetas con sus respectivas barras
vjust = -0.4, # Ubicar las etiquetas ligeramente arriba
size = 4, # Tamaño del texto
fontface = "bold", # Negrita para mayor legibilidad
color = "black" # Color negro para contraste
) +
# Paleta de colores diferenciada para masculino y femenino
scale_fill_manual(
values = c(
"Total_Masculinos" = "#88C9CD", # Azul claro
"Total_Femeninos" = "#54A676" # Verde
),
labels = c("Masculino", "Femenino"), # Etiquetas legibles
name = "Género" # Título de la leyenda
) +
# Títulos y etiquetas de los ejes
labs(
title = "Relación entre Nivel de Formación y Género", # Título del gráfico
x = "Nivel de Formación", # Eje X
y = "Total de Aprendices" # Eje Y
) +
# Formato del eje Y con separador de miles "." y decimales ","
scale_y_continuous(labels = label_number(big.mark = ".", decimal.mark = ",")) +
# Aplicar tema minimalista y ajustar estilos
theme_minimal(base_size = 13) + # Tema limpio con tamaño base ajustado
theme(
axis.text.x = element_text(angle = 45, hjust = 1), # Rotar etiquetas del eje X
axis.title.x = element_text(face = "bold"), # Negrita en título eje X
axis.title.y = element_text(face = "bold"), # Negrita en título eje Y
plot.title = element_text(hjust = 0.5, face = "bold", size = 16), # Centrar y resaltar título
legend.title = element_text(face = "bold"), # Negrita en la leyenda
legend.text = element_text(size = 11) # Tamaño de texto en leyenda
)El gráfico revela la distribución de aprendices por nivel de formación y género, destacando tres niveles clave: Técnico, Tecnólogo y Especialización Tecnológica. En primer lugar, el nivel Técnico es, con diferencia, el más popular, con un total de 18.317 aprendices. De estos, 5.337 son hombres y 12.980 son mujeres, lo que evidencia una participación femenina significativamente mayor en este tipo de formación. Esto podría reflejar una tendencia creciente de las mujeres hacia programas técnicos, que tradicionalmente han sido dominados por hombres, pero ahora están viendo una mayor inclusión femenina. Este fenómeno podría estar relacionado con un acceso más igualitario a las oportunidades educativas y una mayor promoción de la participación femenina en sectores técnicos.
En el nivel Tecnólogo, con 4.136 aprendices, la participación de hombres sigue siendo inferior con 1.233 estudiantes masculinos frente a 2.903 mujeres, pero la diferencia no es tan amplia como en el nivel Técnico. Este equilibrio muestra que las mujeres también están tomando una participación activa en la formación tecnológica de nivel superior. La mayor cercanía en la distribución de género en este nivel podría reflejar una mayor accesibilidad y un cambio cultural hacia una mayor inclusión de ambos géneros en áreas tecnológicas más especializadas.
Finalmente, en el nivel de Especialización Tecnológica, con un total de 39 aprendices (de los cuales 25 son hombres y 14 son mujeres), la representación es mínima en comparación con los otros dos niveles. Este bajo número de aprendices podría indicar una baja demanda de programas en este nivel de formación, posiblemente debido a una oferta limitada o a la especialización de los cursos, lo que hace que su accesibilidad sea más restringida y que solo un número pequeño de estudiantes, tanto hombres como mujeres, se inscriban en estos programas avanzados.
En conclusión, los datos muestran que la formación técnica es la más demandada, con una predominancia femenina en el nivel Técnico y Tecnólogo, mientras que en Especialización Tecnológica, la participación masculina es más destacada, aunque las mujeres siguen estando presentes en niveles más avanzados. Este patrón puede reflejar tanto un cambio hacia la equidad de género en áreas tradicionalmente dominadas por hombres como la existencia de barreras o limitaciones en la oferta de formación especializada en tecnología.
library(scales) # Para usar 'number()' con punto y coma
# Filtrar, estandarizar y agrupar
df_modalidad_sector <- df %>%
filter(
!is.na(MODALIDAD_FORMACION),
!is.na(NOMBRE_SECTOR_PROGRAMA)
) %>%
mutate(MODALIDAD_FORMACION = toupper(MODALIDAD_FORMACION)) %>%
group_by(NOMBRE_SECTOR_PROGRAMA, MODALIDAD_FORMACION) %>%
summarise(Total_Programas = n(), .groups = "drop")
# Gráfico de barras agrupadas
ggplot(df_modalidad_sector, aes(
x = NOMBRE_SECTOR_PROGRAMA,
y = Total_Programas,
fill = MODALIDAD_FORMACION
)) +
geom_col(position = position_dodge(width = 0.8), width = 0.7) +
# Etiquetas con formato: miles con punto, decimales con coma
geom_text(
aes(label = number(Total_Programas, big.mark = ".", decimal.mark = ",")),
position = position_dodge(width = 0.8),
vjust = -0.3,
size = 3.5,
fontface = "bold",
color = "black"
) +
# Paleta personalizada
scale_fill_manual(values = c(
"PRESENCIAL" = "#54A676",
"VIRTUAL" = "#6BBCC0"
)) +
# Títulos y ejes
labs(
title = "Programas Presenciales vs Virtuales por Sector",
x = "Sector de Programa",
y = "Total de Programas",
fill = "Modalidad"
) +
# Formato de eje Y con punto y coma
scale_y_continuous(
labels = label_number(big.mark = ".", decimal.mark = ","),
expand = expansion(mult = c(0, 0.2))
) +
# Estilo visual
theme_minimal(base_size = 13) +
theme(
plot.title = element_text(hjust = 0.5, face = "bold", size = 16),
axis.text.x = element_text(angle = 45, hjust = 1, size = 11),
axis.title.x = element_text(face = "bold", size = 12),
axis.title.y = element_text(face = "bold", size = 12),
legend.title = element_text(face = "bold", size = 12),
legend.text = element_text(size = 10),
plot.margin = margin(1, 1, 1, 1, "cm")
)El gráfico presentado muestra la distribución de programas educativos presenciales y virtuales por sector, evidenciando patrones significativos en la oferta académica en Colombia. Al analizar estos datos, se puede observar una clara tendencia hacia la modalidad presencial en la mayoría de los sectores, aunque la modalidad virtual ha ido ganando terreno, particularmente en áreas más orientadas al comercio y la educación.
En primer lugar, el sector de Servicios es el que destaca con una abrumadora cantidad de programas, alcanzando un total de 1.718 programas presenciales y 1.533 virtuales. Aunque la modalidad presencial sigue siendo la más ofrecida, con una diferencia significativa, la cantidad de programas virtuales en este sector también es considerable. Esto refleja un crecimiento en la oferta de formación a distancia en un sector que, debido a su naturaleza flexible, se adapta bien a las plataformas virtuales, lo que permite una mayor accesibilidad.
El sector de Industria también muestra una clara preponderancia de la modalidad presencial, con 1.363 programas frente a 284 virtuales. Sin embargo, a pesar de que la modalidad presencial es dominante, el número de programas virtuales no es desdeñable, lo que indica que, incluso en sectores que requieren formación técnica o especializada, la modalidad virtual está comenzando a ofrecer opciones, posiblemente para aquellos que buscan una mayor flexibilidad.
En contraste, el sector de Comercio presenta una interesante inversión en su distribución: hay 112 programas presenciales, pero 138 programas virtuales. Este fenómeno refleja la creciente tendencia de ofrecer programas virtuales en el área del comercio, que, dada la naturaleza de sus contenidos (a menudo orientados al manejo de herramientas digitales y conocimientos teóricos), se presta perfectamente para ser impartido a distancia. Esto sugiere un cambio en las necesidades y preferencias del mercado, donde la formación virtual está tomando un rol más importante.
El sector Agropecuario, con apenas 5 programas presenciales y sin programas virtuales, muestra una oferta muy limitada. Esto podría estar relacionado con la naturaleza práctica de los estudios en este campo, que requieren formación directa en el terreno y en entornos controlados, lo que hace que la modalidad presencial sea esencial. La falta de oferta virtual podría indicar la dificultad de adaptar este tipo de formación a plataformas en línea debido a la necesidad de prácticas en el campo.
El sector de Construcción, similar al agropecuario, muestra una oferta mínima: 5 programas presenciales y ningún programa virtual. Esto refleja la alta necesidad de formación práctica en el terreno en este sector, donde la formación en el aula no es suficiente, y las experiencias hands-on son cruciales.
Por otro lado, el sector de Educación, que tiene un programa presencial y 4 virtuales, sigue una tendencia más moderada en cuanto a la adopción de la modalidad virtual. Aunque la educación a distancia ha ganado popularidad, especialmente desde la pandemia, aún existe una oferta relativamente pequeña en este sector en comparación con otros más flexibles, como Comercio.
El sector de Electrificación, con 30 programas presenciales y ninguno virtual, refleja una tendencia similar a la de otros sectores técnicos y especializados, donde las habilidades prácticas requieren una enseñanza más directa. La falta de programas virtuales podría indicar limitaciones en la capacidad de ofrecer formación remota en un campo tan técnico.
El sector Primario y Extractivo, con 108 programas presenciales y 10 virtuales, muestra una clara preferencia por la modalidad presencial, aunque la oferta virtual también es significativa en comparación con otros sectores como Agropecuario o Electrificación.
El sector de Textiles tiene una oferta casi nula, con solo 2 programas presenciales y ninguno virtual. Al igual que en Construcción y Agropecuario, los programas en Textiles pueden estar muy enfocados en la formación práctica, que no puede ser fácilmente replicada de manera virtual.
En cuanto al sector Transversal, se observa una división más equilibrada, con 414 programas presenciales y 263 virtuales. Aunque la modalidad presencial sigue dominando, la oferta virtual sigue siendo considerable, lo que indica un interés creciente por ofrecer formación flexible en áreas que no se centran en un campo específico.
Finalmente, el sector Transporte es un caso particular, con 10 programas virtuales y ninguno presencial. Esto sugiere que la formación en este sector se está adaptando a nuevas tecnologías y plataformas de enseñanza a distancia, posiblemente en áreas relacionadas con la logística o la gestión de transporte.
En resumen, el análisis de la distribución de programas presenciales y virtuales por sector revela un predominio de la modalidad presencial en sectores técnicos y especializados, como Industria, Servicios, Construcción y Electrificación, donde la formación práctica y directa es crucial. Sin embargo, sectores más teóricos y menos dependientes de la práctica directa, como Comercio, Educación y Transversal, están adoptando rápidamente la modalidad virtual. Esto muestra una clara tendencia hacia la diversificación de modalidades, donde la oferta virtual está ganando terreno, especialmente en sectores que pueden ofrecer flexibilidad en la enseñanza, y en sectores tradicionales con menos necesidad de presencia física.
El análisis general del proyecto educativo revela tendencias interesantes en los datos proporcionados, con un enfoque particular en los programas de formación de 2023 y 2024. Se observa que los programas de “Curso Especial” y formación técnica siguen siendo los más demandados, con una creciente preferencia por cursos rápidos y accesibles que permiten a los aprendices ingresar de manera inmediata al mercado laboral. Aunque los programas técnicos han mostrado un notable crecimiento, especialmente en 2024, los sectores de especialización tecnológica y eventos educativos siguen siendo áreas de baja demanda, lo que indica una necesidad de revisar y mejorar la oferta en estas áreas.
Además, la comparación entre 2023 y 2024 ha mostrado un crecimiento general en la cantidad de aprendices, con un notable aumento en la formación técnica y un ligero aumento en tecnólogos, mientras que la inscripción en programas de especialización avanzada y tecnológicos ha disminuido. Estos cambios sugieren que la educación sigue adaptándose a las nuevas exigencias del mercado laboral, pero que también hay áreas donde la oferta educativa necesita ser ajustada para alinearse mejor con las necesidades de los estudiantes y las demandas emergentes de la industria.
En resumen, a pesar de la ligera disminución en la cantidad de aprendices en 2024, los programas de Curso Especial y Técnico muestran una tendencia positiva, lo que resalta la importancia de la flexibilidad en los programas educativos. Sin embargo, para lograr una oferta más equilibrada y diversificada, se requiere un impulso en áreas como la especialización tecnológica y los eventos educativos, que podrían beneficiarse de mejores estrategias de promoción y actualización de contenido.
Por otra parte, la baja demanda de ofertas de programas para los municipios más alejados del Atlántico presentan poca cobertura o el fácil acceso a las ofertas, siendo estos poco beneficiados con las ofertas prestadas por el SENA.