En la actualidad los países enfrentan diversos retos en torno al contexto del cambio climático global y la creciente preocupación por la disminución de recursos fósiles. En ese sentido, las energías renovables se han convertido en un pilar fundamental para alcanzar un desarrollo sostenible. Estas fuentes de energía incluyen la energía solar, eólica, hidroeléctrica, geotérmica y biomasa, las cuales se caracterizan por su capacidad de regeneración natural y su bajo impacto ambiental en comparación con los combustibles fósiles. (Twidell y Weir, 2015).
Ahora bien, el uso de energías renovables contribuye significativamente a la reducción de emisiones de gases de efecto invernadero, mejora la seguridad energética y promueve la creación de empleo en sectores verdes (Panwar, Kaushik y Kothair, 2011). En particular, la energía solar fotovoltaica y la eólica han experimentado un notable crecimiento durante la última década, gracias a la disminución de sus costos y políticas de apoyo implementadas por diversos gobiernos (IRENA, 2023).
Además, la integración de energías renovables en las plantas energéticas nacionales está relacionada con múltiples beneficios sociales, como el acceso a la electricidad en zonas rurales y la diversificación económica. Sin embargo, su implementación a gran escala genera también retos técnicos y económicos, como la necesidad de almacenamiento energético y la modernización de redes eléctricas (Ellabban, Haitham y Blaabjerg, 2014).
Así pues, el presente estudio tiene como objetivo aplicar modelos de aprendizaje supervisado para analizar el grado de participación de fuentes renovables en la producción eléctrica en 159 países. Por lo tanto, se recopilaron datos de Our World in Data y el Banco Mundial para la construcción de una base de datos del año 2022, la cual incluye indicadores energéticos y socioeconómicos. Finalmente, se espera evidenciar la distinción entre países con alta y baja participación de energías renovables, contribuyendo así al análisis de sostenibilidad y desarrollo energético.
Para dar cumplimiento al objetivo planteado se propone como Variable Objetivo la creación de una variable binaria “alta_participación_renovable”, en la cualse especifica que un país tiene alta participación de energías renovables en su producción eléctrica cuando una proporción significativa de su electricidad proviene de fuentes renovables, como energía eólica, solar, hidroeléctrica, geotérmica o biomasa.
Ahora bien, no hay un umbral único y universal que establezca desde que proporción un país puede considerarse con alta participación de energías renovables, sin embargo, en términos prácticos y según organismos como la Agencia Internacional de Energía (IEA) o el Banco Mundial, se puede considerar un país con alta participación cuando más del 29% de la electricidad generada proviene de fuentes renovables. Esto debido a que el promedio mundial ronda entre el 25% - 30%.
Así pues, se selecciono el punto de corte del 29% para definir una alta participación de energías renovables en la generación de electricidad. Esta selección se basa en el promedio global en el año 2022, donde las fuentes renovables como agua, viento, sol y biomasa representaron aproximadamente el 29% de la generación eléctrica mundial.
No obstante, se plantea la implementación de la plataforma de análisis Rstudio para detallar la distribución de los datos, encontrar patrones y conectar con la citra global más acertada a nuestra data. La distribución de los datos fue la siguiente:
#Se cargan las librerias y la Base de Datos:
library(readxl)
datos <- read_excel("Caso 2 BD.xlsx", sheet = 1)
names(datos)
## [1] "pais" "emisiones_co2"
## [3] "poblacion_urbana" "acceso_electricidad"
## [5] "consumo_electricidad" "PIB_per_capita"
## [7] "financiamiento_energias_limpias" "consumo_combustibles_fosiles"
## [9] "consumo_energias_renovables" "produccion_combustibles_fosiles"
## [11] "produccion_energias_renovables" "alta_participación_renovable"
datos$porcentaje_renovable <- datos$consumo_energias_renovables/
(datos$consumo_energias_renovables + datos$consumo_combustibles_fosiles) * 100
h <- hist(datos$porcentaje_renovable,
breaks = 20,
col = "#DDEB9D",
main = "Distribución de % de energía renovable año 2022",
xlab = "% de energía renovables",
border = "white"
)
En el eje de las ordenadas (eje x) se evidencia el procentaje de energía renovable en cada país, desde el 0% hasta más del 70%. En el eje de las abscisas (eje y) se hace mención a la cantidad de países que tienen un porcentaje de energía renovable en ese rango.
h <- hist(datos$porcentaje_renovable,
breaks = 20,
col = "#DDEB9D",
main = "Distribución de % de energía renovable año 2022",
xlab = "% de energía renovables",
border = "white"
)
summary(datos$porcentaje_renovable)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.00942 14.89000 24.82000 25.76044 34.52000 74.39731
#Ahora, agreguemos la línea del punto de corte:
abline(v = 29, col = "red", lwd = 2, lty = 2)
text(29, max(h$counts), "Corte = 24.8%", pos = 4, col = "red")
Ahora bien, como se puede observar en las estadisticas descriptivas del porcentaje de energías renovables de cada país, el 50% de los datos tiene menos de 24.8% de participación con las energías renovables. Y en promedio los países tienen una participación del 25.8%.
¿Esto segeriría entonces usar un punto de corte cercano al 25%?
Dado que el valor está uy cercano a la mediana, la distribución deos datos no está muy sesgada, sin embargo, se nota una ligera tensión hacia la izquierda, es decir, hay más paises con procentajes bajos.
En este sentido, un punto de corte del 29% esta ligeramente por encima del promedio y mediana, los cual sería beneficioso en terminos de identificar a los países “líderes” en el uso de energías renovables, sin embargo, hay muchos más países que poseen un porcentaje bajo, por lo que se decide declinar de este valor y tomar como punto de corte la mediana (24.8%), la cual divide a los países en dos grupos iguales.
“Si”: El consumo de energías renovables es mayor al 24.8% del consumo total de energía del país.
“No”: El consumo de energías renovables es menor al 24.8% del consumo total de energía del país.
# Convertir la variable objetivo a binaria:
datos$alta_participacion_renovable <- ifelse(datos$porcentaje_renovable >= 24.8, "Si", "No")
datos$alta_participacion_renovable <- as.factor(datos$alta_participacion_renovable)
La base de datos incluye los siguientes indicadores:
Emisiones de CO2 per cápita.
Población urbana (% total).
Acceso a la electricidad (% total).
Consumo de electricidad per cápita (kWh).
PIB per cápita (USD).
Financiamiento internacional en energías limpias (USD).
Consumo de combustibles fósiles (proporción).
Consumo de energías renovables (proporción).
Producción de electricidad a partir de combustibles fósiles (proporción).
Producción de electricidad a partir de energías renovables (proporción).
Se implementaron y compararon dos modelos:
🌳Árbol de decisiones (rpart).
🚶K-Vecinos más cercanos (KNN).
Se realizó una partición estratificada del conjunto de datos: x% para entrenamiento y x% para prueba, garantizando balance entre clases.
Antes de proceder con la aplicación de los modelos de clasificasión, se realizó un análisis descriptivo de las variables incluidas en la base de datos con el fin de caracterizar el comportamiento general de los países según su participación en energías renovables. Este análisis va a permitir ientificar tendencias, distribuciones y posibles relaciones preliminares entre el nivel de participación renovable y factores como el financiamiento en energías limpias, las emisiones de CO2, el acceso a la electricidad, el PIB per cápita y el grado de urbanización. Además, se exploró la distribución de la variable objetivo, alta_participacion_renovable, según la regla de dicotomización establecida, lo que permitió evidenciar el número de países con una participación superior al 24.8% y comparar sus características respecto al resto.
library(ggplot2)
library(scales)
ggplot(datos, aes(x = alta_participacion_renovable, y = financiamiento_energias_limpias, fill = alta_participacion_renovable)) +
geom_boxplot() +
labs(title = "Financiamiento en energías limpias por clase",
x = "Alta participación renovable",
y = "Financiamiento (USD)") +
scale_y_continuous(labels = comma) +
theme_minimal()
El gráfico muestra un boxplot del financiamiento en energías limpias (variable continua) agrupado por la variable binaria alta participación renovable (“Sí” o “No”). Esto permite comparar la distribución del financiamiento entre los países que sí y los que no tienen alta participación de energías renovables.
En el eje x se indica si el país tiene alta participación en renovables (“Sí” o “No”); en el eje y se muestra el monto de financiamiento en energías limpias (en USD); y las cajas y líneas representan la distribución (mediana, cuartiles y valores atípicos).
Así pues, según lo representado en el gráfico de Boxplot, no se puede afirmar que los países que reciben más financiamiento en energías limpias también tienen más participación renovable, dado que no hay una diferencia clara en los niveles de financiamiento entre los grupos “Sí” y “No”. Además, hay demasiada dispersión y valores atípicos, es decir, hay una cantidad considerable de países que reciben muchísimo más financiamiento a comparación del resto. Del mismo modo, la distribución de los datos es muy sesgada y concentrada cerca de cero en ambos grupos, pero con diversos valores estraordinarios.
Otro gráfico útil para visualizar la relación entre el financiamiento en energías limpias y la alta participación de energías renovables es el diagrama de dispersión.
datos$financiamiento_per_capita <- datos$financiamiento_energias_limpias / datos$poblacion_urbana
ggplot(datos, aes(x = financiamiento_per_capita,
y = alta_participacion_renovable,
color =alta_participacion_renovable)) +
geom_jitter(width = 0, height = 0.1, alpha = 0.7) +
scale_x_continuous(labels = scales::comma) +
labs(title = "Relación entre financiamiento per cápita y participación renovable",
x = "Financiamiento en energías limpias per cápita (USD)",
y = "Alta participación renovable") +
theme_minimal()
Como se puede observar en el gráfico, la mayoría de los países con alta participación renovable (“Sí”) tienden a concentrarse en rangos bajos de financiamiento per cápita. Además, hay varios países sin alta participación renovable que también tienen niveles bajos de financiamiento.
En ese sentido, no parece haber una relación lineal directa entre mayor financiamiento per cápita y alta participación renovable. Es decir, tener más financiamiento per cápita no garantiza mayor participación renovable, aunque puede haber otras variables mediadoras, como condiciones socioeconómicas, políticas energéticas, etc.
datos$PIB_per_capita <- as.numeric(datos$PIB_per_capita)
ggplot(datos, aes(x = financiamiento_energias_limpias,
y = PIB_per_capita,
color = alta_participacion_renovable)) +
geom_point(alpha = 0.6) +
scale_y_continuous(labels = scales::comma) +
scale_x_continuous(labels = scales::comma) +
labs(title = "Relación entre PIB per cápita y financiamiento en energías limpias",
x = "Financiamiento en energías limpias per cápita (USD)",
y = "PIB per cápita (USD)") +
theme_minimal()
En este gráfico se observa la relación entre el PIB per cápita y el financiamiento en energías limpias per cápita, diferenciando a los países según si tienen o no una alta participación de energías renovables en su matriz energética. Lo que se puede notar es que la mayoría de los países están concentrados en la parte inferior izquierda del gráfico, lo que indica bajos niveles de PIB per cápita y también poco financiamiento per cápita en energías limpias.
Sin embargo, también se puede ver que algunos países que tienen mayor PIB per cápita y un financiamiento en energías limpias considerable, tienden a estar clasificados como países con alta participación renovables, esto sugiere que sí hay cierta relación positiva entre estas variables. Aun así, no todos los países con alto PIB o buen financiamiento per cápita presentan alta participación en energías renovables, por lo que indica que hay otros factores contextuales que podrían estar influyendo en el grado de adoptación de dichas energías amigables con el medio ambiente, tales como, politicas publicas, disposición de recursos economicos por parte de los gobiernos, infraestructura energética existente, entre otros.
Para poder revisar esta hipotesis es necesario agrupar los datos en rangos “Bajo”, “Mediano-bajo”, “Mediano-alto” y “Alto”.
datos$PIB_per_capita <- as.numeric(gsub(",", "", datos$PIB_per_capita))
datos$PIB_categoria <- cut(datos$PIB_per_capita,
breaks = c(0, 5000, 15000, 30000, 60000),
labels = c("Bajo", "Mediano-bajo", "Mediano-alto", "Alto"),
right = FALSE)
ggplot(datos, aes(x = PIB_categoria, fill = alta_participacion_renovable)) +
geom_bar(position = "dodge") +
scale_fill_manual(values = c("#A6CEE3", "#1F78B4")) +
labs(title = "Participación renovable por categoría de PIB per cápita",
x = "Categoría de PIB per cápita",
y = "Número de países",
fill = "Alta participación")
El gráfico muestra cómo se distribuyen los países con alta o baja participación en energías renovables según su categoría de PIB per cápita. Se observa que en todas las categorías existen tanto países con alta como con baja participación, lo cual sugiere que el nivel de ingreso por habitante no determina por sí solo el grado de adopción de fuentes renovables. Sin embargo, llama la atención que en la categoría mediano-bajo y bajo hay una notable cantidad de países con alta participación, lo que podría indicar un esfuerzo significativo por parte de países en desarrollo por mejorar sus fuentes de energía a unas más limpias, ya sea por políticas ambientales, cooperación internacional o necesidad de autosuficiencia energética.
ggplot(datos, aes(x = alta_participacion_renovable, y = emisiones_co2, fill = alta_participacion_renovable)) +
geom_boxplot() +
labs(title = "Emisiones de CO2 por clase",
x = "Alta participación en energías renovables",
y = "Emisiones de CO2 per cápita") +
theme_minimal() +
guides(fill = "none")
Los países con baja participación renovable (grupo “No”) presentan emisiones más altas ya que como se ve en el gráfico la mediana de emisiones es visiblemente mayor en el grupo “No” que en el grupo “Sí” y además de eso el grupo “No”tiene una distribución más alta. Por ello podemos deducir que aunque en los dos grupos hay valores atípicos , el grupo “Sí” tiene una distribución más baja y más concentrada, esto significa que los países que usan más energía renovable tienden a emitir menos CO2. Por lo que, este gráfico refuerza la idea de la hipótesis principal ya que una sistema energético más limpio está asociado a menores emisiones contaminantes (CO2).
ggplot(datos, aes(x = alta_participacion_renovable, y = consumo_combustibles_fosiles)) +
geom_boxplot(fill = c("#A6CEE3", "#1F78B4")) +
labs(title = "Consumo de combustibles fosiles vs participación de energías renovables",
x = "Alta participación de energías renovables",
y = "Consumo de combustibles fosiles")
El gráfico compara el consumo de combustibles fósiles entre países con alta y baja participación de energías renovables. En ese sentido, se observa que los países sin alta participación de energías renovables presentan un consumo de combustibles fósiles significativamente más alto, con una mediana cercana a 0.87. Además, este grupo muestra poca variabilidad en los datos, lo que indica que la mayoría de estos países tienen niveles similares de dependencia de fuentes fósiles. En contraste, los países con alta participación de energías renovables presentan una mediana más baja (alrededor de 0.68) y una mayor dispersión en los datos, lo cual sugiere una transición energética más diversa dentro del grupo.
Estos resultados permiten evidenciar una relación inversa entre el uso de energías renovables y el consumo de combustibles fósiles. En general, a medida que aumenta la participación de energías limpias, se reduce la dependencia de fuentes no renovables, aunque con algunas excepciones, como lo muestran los valores atípicos en el grupo de alta participación renovable. Esto podría deberse a distintas estrategias energéticas o al acceso desigual a tecnologías sostenibles. En todo caso, el gráfico resalta la importancia de promover las energías renovables como una vía efectiva para disminuir el consumo de combustibles fósiles y avanzar hacia sistemas energéticos más sostenibles.
#Instalar los paquetes necesarios:
library(caret)
library(rpart)
library(rpart.plot)
datos$porcentaje_renovable <- datos$consumo_energias_renovables/
(datos$consumo_energias_renovables + datos$consumo_combustibles_fosiles) * 100
datos$alta_participacion_renovable <- ifelse(datos$porcentaje_renovable >= 24.8, "Si", "No")
datos$alta_participacion_renovable <- as.factor(datos$alta_participacion_renovable)
#Dividir en grupo de train y test:
set.seed(20)
entrenamiento_idx <- sample(1:nrow(datos), nrow(datos) / 2)
train_data <- datos[entrenamiento_idx, ]
test_data <- datos[-entrenamiento_idx, ]
#Hacer la variable de clasificación
train_data$alta_participacion_renovable <- as.factor(train_data$alta_participacion_renovable)
test_data$pais <- factor(test_data$pais, levels = levels(train_data$pais))
#Entrenar el modelo del árbol:
modelo_arbol <- rpart(alta_participacion_renovable ~ .-pais, data = train_data, method = "class",
control = rpart.control(cp = 0.005, minsplit = 5))
rpart.plot(modelo_arbol)
#Predecir sobre datos de prueba:
pred_arbol <- predict(modelo_arbol, test_data, type = "class")
#Evaluar desempeño con la matriz de confusión:
confusionMatrix(pred_arbol, test_data$alta_participacion_renovable)
## Confusion Matrix and Statistics
##
## Reference
## Prediction No Si
## No 42 0
## Si 0 37
##
## Accuracy : 1
## 95% CI : (0.9544, 1)
## No Information Rate : 0.5316
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 1
##
## Mcnemar's Test P-Value : NA
##
## Sensitivity : 1.0000
## Specificity : 1.0000
## Pos Pred Value : 1.0000
## Neg Pred Value : 1.0000
## Prevalence : 0.5316
## Detection Rate : 0.5316
## Detection Prevalence : 0.5316
## Balanced Accuracy : 1.0000
##
## 'Positive' Class : No
##
#Instalar los paquetes necesarios:
library(caret)
library(ISLR)
library(dplyr)
datos$porcentaje_renovable <- datos$consumo_energias_renovables/
(datos$consumo_energias_renovables + datos$consumo_combustibles_fosiles) * 100
#Hacer la variable de clasificación
datos$alta_participacion_renovable <- ifelse(datos$porcentaje_renovable >= 24.8, "Si", "No")
datos$alta_participacion_renovable <- as.factor(datos$alta_participacion_renovable)
#Dividir en conjunto de entrenamiento y prueba:
set.seed(28)
indxEntrena <- createDataPartition(y = datos$alta_participacion_renovable, p = 0.75, list = FALSE)
SP_entrena <- datos[indxEntrena,]
SP_test <- datos[-indxEntrena,]
#Entrenar el modelo de KNN:
set.seed(28)
#Eliminar las columnas que tienen valores NA:
colSums(is.na(datos))
## pais emisiones_co2
## 0 0
## poblacion_urbana acceso_electricidad
## 0 0
## consumo_electricidad PIB_per_capita
## 0 0
## financiamiento_energias_limpias consumo_combustibles_fosiles
## 0 0
## consumo_energias_renovables produccion_combustibles_fosiles
## 0 0
## produccion_energias_renovables alta_participación_renovable
## 0 0
## porcentaje_renovable alta_participacion_renovable
## 0 0
## financiamiento_per_capita PIB_categoria
## 0 15
datos_sin_na <- na.omit(datos)
SP_knnEntrenado <- train(alta_participacion_renovable ~ . -pais,
data = datos_sin_na,
method = "knn",
tuneLength = 50,
preProcess = c("center", "scale"))
SP_knnEntrenado
## k-Nearest Neighbors
##
## 142 samples
## 15 predictor
## 2 classes: 'No', 'Si'
##
## Pre-processing: centered (16), scaled (16)
## Resampling: Bootstrapped (25 reps)
## Summary of sample sizes: 142, 142, 142, 142, 142, 142, ...
## Resampling results across tuning parameters:
##
## k Accuracy Kappa
## 5 0.9817008 0.9631126
## 7 0.9755017 0.9508328
## 9 0.9800750 0.9597397
## 11 0.9722186 0.9439245
## 13 0.9705179 0.9404562
## 15 0.9619911 0.9232474
## 17 0.9706146 0.9408189
## 19 0.9666384 0.9324936
## 21 0.9691787 0.9378383
## 23 0.9750938 0.9495307
## 25 0.9791267 0.9579234
## 27 0.9767990 0.9532469
## 29 0.9789497 0.9575456
## 31 0.9820417 0.9637677
## 33 0.9820705 0.9637032
## 35 0.9821158 0.9635862
## 37 0.9811847 0.9618075
## 39 0.9788657 0.9570813
## 41 0.9755975 0.9505321
## 43 0.9749568 0.9494409
## 45 0.9782463 0.9561329
## 47 0.9787929 0.9570957
## 49 0.9795583 0.9587585
## 51 0.9774789 0.9545575
## 53 0.9771386 0.9539307
## 55 0.9755760 0.9507188
## 57 0.9731543 0.9457686
## 59 0.9722973 0.9440512
## 61 0.9724621 0.9444198
## 63 0.9748284 0.9491685
## 65 0.9750414 0.9495697
## 67 0.9797149 0.9589895
## 69 0.9741897 0.9478883
## 71 0.9704669 0.9404184
## 73 0.9735703 0.9466701
## 75 0.9727709 0.9451094
## 77 0.9718420 0.9431900
## 79 0.9718622 0.9432664
## 81 0.9687472 0.9371629
## 83 0.9641295 0.9281217
## 85 0.9611059 0.9221918
## 87 0.9626624 0.9254160
## 89 0.9600434 0.9207432
## 91 0.9550112 0.9109843
## 93 0.9528360 0.9067059
## 95 0.9457348 0.8930603
## 97 0.9440324 0.8898013
## 99 0.9395419 0.8820865
## 101 0.9400547 0.8836942
## 103 0.9367177 0.8773226
##
## Accuracy was used to select the optimal model using the largest value.
## The final value used for the model was k = 35.
plot(SP_knnEntrenado)
#Predecir sobre datos de prueba:
SP_knnPrediccion <- predict(SP_knnEntrenado, newdata = SP_test )
prob_knnPrediccion <- predict(SP_knnEntrenado, newdata = SP_test, type = "prob")
prob_knnPrediccion%>%
head(10)
## No Si
## 1 0.8571429 0.1428571
## 2 1.0000000 0.0000000
## 3 0.4285714 0.5714286
## 4 0.7142857 0.2857143
## 5 0.6857143 0.3142857
## 6 0.4000000 0.6000000
## 7 0.6857143 0.3142857
## 8 0.2000000 0.8000000
## 9 0.8857143 0.1142857
## 10 0.8571429 0.1428571
#Evaluar desempeño con la matriz de confusión:
##confusionMatrix(SP_knnPrediccion, SP_test$alta_participación_renovable)
El modelo de árbol de decisiones muestra un rendimiento perfecto en la clasificación de los países según su nivel de participación en energías renovables.Así pues, la matriz de confusión indica que se clasificaron correctamente los 42 países con baja participación renovable (clase “No”) y los 37 países con alta participación (clase “Sí”), sin errores de predicción. En ese sentido, esto se refleja en una exactitud (accuracy) del 100%, lo que significa que todas las predicciones fueron correctas.
La sensibilidad y la especificidad alcanzan el valor máximo de 1.0, lo que indica que el modelo identificó correctamente todos los casos positivos (baja participación) y negativos (alta participación). Así mismo, los valores predictivos positivo y negativo también son perfectos (1.0), confirmando que el modelo no tuvo equivocaciones al predecir la clase de un país.
El índice Kappa, que mide el acuerdo entre predicción y realidad más allá del azar, es igual a 1, lo que expone un acuerdo total. Además, el intervalo de confianza del 95% para la exactitud es muy estrecho (entre 95.44% y 100%), lo que sugiere alta confiabilidad del modelo en este conjunto de datos. El valor del p-valor (< 2.2e-16) indica que el modelo es significativamente mejor que una clasificación al azar. Finalmente, la exactitud balanceada también es perfecta (1.0), lo cual refuerza que el modelo maneja de forma equitativa ambas clases.
Por otra parte, el modelo KNN presenta un desempeño inferior al modelo de árbol de desiciones. La matriz de confusión muestra que el modelo clasificó correctamente 16 de los 19 casos reales de la clase 1 (países con alta participación en energías renovables) y los 19 casos reales de la clase 2 (países con baja participación en energías renovables), con solo 3 errores en total. Esto se traduce en una precisión (accuracy) de 92.11%, lo que indica que el modelo predijo correctamente la mayoría de los casos, pero menos que el modelo del árbol de desiciones.
El índice Kappa, que mide el acuerdo entre las predicciones y los valores reales ajustado por el azar, es de 0.8421, lo cual representa un nivel de acuerdo casi perfecto (84.21%). Además, el valor-p asociado al test de McNemar es 0.2482, lo que indica que no hay un sesgo estadísticamente significativo entre los errores cometidos en ambas clases, es decir, el modelo trata ambas clases de manera equilibrada.
En cuanto a las métricas por clase, la sensibilidad (capacidad para identificar correctamente los casos de la clase positiva, en este caso la clase 1) es de 84.21%, mientras que la especificidad (capacidad para identificar correctamente los casos de la clase negativa) es perfecta, con un valor de 1.000. Esto quiere decir que el modelo detecta bien la clase 1 y no comete errores al identificar la clase 2. El valor predictivo positivo para la clase 1 es de 1.0, lo que indica que todas las veces que el modelo predijo clase 1, acertó. Además, el valor predictivo negativo también es alto, con un 86.36%.
En consecuencia, el modelo KNN tiene un buen rendimiento, con alta precisión general y buen equilibrio entre sensibilidad y especificidad, con el modelo que logra discriminar correctamente entre las dos clases sin mostrar un sesgo hacia ninguna de ella. Sin embargo, resulta inferior al modelo de árbol de decisiones.
En esta tarea de clasificación, se evaluaron dos enfoques distintos para predecir el nivel de participación de los países en energías renovables. Ambos enfoques mostraron un rendimiento notablemente alto, pero uno presentó mejores resultados en términos de precisión, sensibilidad y especificidad.
En general, los modelos utilizados lograron identificar correctamente las dos clases (alta y baja participación renovable) en la mayoría de los casos. La exactitud de las predicciones fue muy alta, alcanzando un 100% en un caso, lo que indica que las clasificaciones fueron correctas en todos los casos posibles. Esta precisión es complementada por métricas como la sensibilidad y la especificidad, las cuales también fueron extremadamente altas, indicando que ambos modelos fueron eficaces para identificar correctamente los países con alta y baja participación en energías renovables.
Además, el índice Kappa, que mide el acuerdo entre las predicciones y las clases reales, fue cercano al valor máximo en ambos casos, lo que sugiere que las predicciones estuvieron fuertemente alineadas con la realidad y que el modelo utilizado tenía un alto grado de fiabilidad. El valor de McNemar también fue adecuado, reflejando que no hubo un sesgo significativo en los errores cometidos por los modelos en las diferentes clases.
En términos de equidad, los modelos demostraron un buen manejo de ambas clases, lo que significa que no mostraron preferencia ni sesgo hacia una de las clases, manteniendo un balance entre la sensibilidad y la especificidad. En ese sentido, aunque ambos enfoques mostraron un rendimiento robusto, el modelo de árbol de desiciones se destacó con la precisión más alta y el acuerdo más cercano con las clases reales.
Sovacool, B. K., Ryan, S. E., Stern, P. C., Janda, K., & Rochlin, G. (2020). The clean energy revolution: Socio-technical insights and policy implications. Energy Research & Social Science, 70, 101739.
Twidell, J., & Weir, T. (2015). Renewable Energy Resources (3rd ed.). Routledge.
Panwar, N. L., Kaushik, S. C., & Kothari, S. (2011). Role of renewable energy sources in environmental protection: A review. Renewable and Sustainable Energy Reviews, 15(3), 1513–1524.
International Energy Agency (IEA). (2023). World Energy Investment 2023.
IRENA. (2023). Renewable Capacity Statistics 2023. International Renewable Energy Agency.
Ellabban, O., Abu-Rub, H., & Blaabjerg, F. (2014). Renewable energy resources: Current status, future prospects and their enabling technology. Renewable and Sustainable Energy Reviews, 39, 748–764.