El análisis de correlación canónica es una técnica que consiste en identificar y estudiar la relación lineal que puede existir entre dos conjuntos de variables. Se basa en construir las mejores combinaciones lineales de cada grupo de variables (denominadas variables canónicas) de modo que se maximice la correlación entre las dos agrupaciones, esto da lugar a la llamada correlación canónica.
Para realizar esta técnica, primero se divide el conjunto de datos en dos subconjuntos de variables, denominados X y Y, los cuales representan los dos grupos entre los que se desea analizar la relación.
sea \[\mathbf{X}_{(p+q)\times 1} = \begin{bmatrix} X_1 \\ X_2 \\ \vdots \\ X_p \\ X_{p+1} \\ \vdots \\ X_{p+q} \end{bmatrix} = \begin{bmatrix} \mathbf{X}_{p\times{q}} \\ \cdots \\ \mathbf{X}_{q\times{1}} \end{bmatrix}\]
Donde
\(\mathbf{X}_{p\times 1} =[X_1\;X_2\;\cdots\;X_p]^{\mathsf{T}}\)
\(\mathbf{Y_{q\times 1}} = [X_{p+1} \; X_{p+2} \;\cdots \; X_{p+q}]^{\mathsf{T}}\)
El interés es medir la relación lineal entre éstos dos conjuntos.
Considere
\[\Sigma = \begin{bmatrix} \Sigma_{XX} & \vdots &\Sigma_{XY}\\ \cdots & \cdots & \cdots\\ \Sigma_{YX} & \vdots &\Sigma_{YY} \end{bmatrix}_{(p+q)\times{(p+q)}}\]
Donde
Observación: \(\Sigma_{XY} = \Sigma_{YX}^{\mathsf{T}}\)
Para determinar el grado de relación lineal entre los dos conjuntos de datos \(\mathbf{X}\) e \(\mathbf{Y}\) se definen las variables canónicas :
\(U = \mathbf{a}^{\mathsf{T}}X\) combinaciones lineales de \(\mathbf{X}\)
\(V = \mathbf{b}^{\mathsf{T}}Y\) combinaciones lineales de \(\mathbf{Y}\)
Para algún par de vectores de coeficientes a y b.
Luego, la correlación canónica entre \(U\) y \(V\)
\[\rho{U,V} = \frac{Cov[U,V]}{\sqrt{Var[U]}\sqrt{Var[V]}}\]
mide el grado de relación lineal entre los dos conjuntos de variables.
Note que:
\[\mathrm{Var}[U] =\mathrm{Var}\!\left[\mathbf{a}^{\mathsf{T}}\mathbf{X}\right] =\mathbf{a}^{\mathsf{T}}\mathrm{Var}[\mathbf{X}]\,\mathbf{a} =\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}\]
\[\mathrm{Var}[V] =\mathrm{Var}\!\left[\mathbf{b}^{\mathsf{T}}\mathbf{Y}\right] =\mathbf{b}^{\mathsf{T}}\mathrm{Var}[\mathbf{Y}]\,\mathbf{b} =\mathbf{b}^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}\]
\[\mathrm{Cov}[U,V] =\mathrm{Cov}\!\left[\mathbf{a}^{\mathsf{T}}\mathbf{X},\,\mathbf{b}^{\mathsf{T}}\mathbf{Y}\right] =\mathbf{a}^{\mathsf{T}}\mathrm{Cov}[\mathbf{X},\mathbf{Y}]\,\mathbf{b} =\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XY}\mathbf{b}\]
Por lo tanto
\[\rho{U,V} = \frac{\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XY}\mathbf{b}}{\sqrt{\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}}\sqrt{\mathbf{b}^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}}}\]
La idea principal es determinar los vectores de coeficientes a y b que hagan \(\rho{U,V}\) sea lo más grande posible.
Observacion
Se debe tener en cuenta que si
\[Var[U] = 1 = Var[V]\]
entonces
\[\rho{U,V} = \frac{Cov[U,V]}{\sqrt{Var[U]}\sqrt{Var[V]}} = Cov[U,V]\]
Entonces se pueden determinar los vectores de constantes o vectores de coeficientes \(\mathbf{a}^{\mathsf{T}}\) y \(\mathbf{b}^{\mathsf{T}}\) tal que se maximice \(\rho{U,V}\) sujeto a esta restricción.
esto es equivalente a maximizar
\[\rho{U,V} = \frac{\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XY}\mathbf{b}}{\sqrt{\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}}\sqrt{\mathbf{b}^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}}}\]
sujeto a \(\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}=1=\mathbf{b}^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}\)
Continuando…
Recuerde que , dado que \(U\) y \(V\) son combinaciones lineales de X e Y respectivamente, se puede tener \(p\) combinaciones de \(\mathbf{X}\) y \(q\) combinaciones de \(\mathbf{Y}\)
En consecuencia, se obtienen
\[(U_1,V_1),(U_2,V_2),...,(U_k,V_k)\]
variables canónicas.
\[U_1=\mathbf{a}_1^{\mathsf{T}}X\]
\[V_1=\mathbf{b}_1^{\mathsf{T}}X\]
para las cuales se desea maximizar \(\rho{U_1,V_1}=\rho_1^*\) sujeto a \(Var[U] = 1 = Var[V]\)
equivalentemente,
maximizar \[U_1=\mathbf{a}_1^{\mathsf{T}}\Sigma_{XY}\mathbf{b}_1\]
sujeto a \[\mathbf{a}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}=1=\mathbf{b}^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}\]
Recuerde que
así que se puede tener \(p\)
combinaciones de \(\mathbf{X}\) y \(q\) combinaciones de \(\mathbf{Y}\).
En consecuencia, se obtienen
\[(U_1,V_1),(U_2,V_2),...,(U_k,V_k)\]
Pares de variables canónicas.
Particularmente, el primer par de variales canónicas denotado \((U_1,V_1)\) es:
\[U1=\mathbf{a}_1^{\mathsf{T}}\mathbf{X} \\ V1=\mathbf{b}_1^{\mathsf{T}}\mathbf{Y}\]
Análogamente, el segundo par de variables canónicas denotado \((U_2,V_2)\) es:
\[U2=\mathbf{a}_2^{\mathsf{T}}\mathbf{X} \\ V2=\mathbf{b}_2^{\mathsf{T}}\mathbf{Y}\]
para el cual se desea, maximizar \(\rho_{U_2, V_2} = \rho_2^{*}\)
sujeto a \(Var[U_2] = 1 = Var[V_2]\)
\(Cov[U_1,U_2] = Cov[U_1,V_2] =Cov[U_2,V_1]=Cov[U_2,V_2] = 0\)
Esto significa que \(U_2\) y \(V_2\) sean no correlacionados con los anteriores pares (\(U_1,V_1\))
Y así en adelante, hasta el \(k\) -ésimo par de variables canonicas (\(U_k,V_k\)):
maximizar \(\rho_{U_k, V_k} = \rho_k^{*}\)
sujeto a \(Var[U_k] = 1 = Var[V_k]\)
\(Cov[U_k,U_l] = Cov[U_k,V_l] =Cov[U_k,V_l]=Cov[U_l,V_k] = 0 \qquad k \neq l\)
Problema de optimización
En este caso, claramente se tiene un problema de optimización con restricción, así que se pueden aplicar multiplicadores de Lagrange:
\[\mathcal{L} = \mathbf{a}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{XY}\mathbf{b}_k -\frac{\alpha}{2}\left(\mathbf{a}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}_k-1\right) -\frac{\beta}{2}\left(\mathbf{b}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}_k-1\right)\]
donde \(\alpha\) y \(\beta\) son los multiplicadores de Lagrange.
Para encontrar \(\mathbf{a}_k\) y \(\mathbf{b}_k\) para \(k=\min\{p,q\}\), se debe resolver el sistema:
\[\begin{cases} \dfrac{\partial \mathcal{L}}{\partial \mathbf{a}_k}=0\\[6pt] \dfrac{\partial \mathcal{L}}{\partial \mathbf{b}_k}=0 \end{cases}\]
el cual queda dado por
\[\begin{cases} \left[\boldsymbol{\Sigma}_{XY}\boldsymbol{\Sigma}_{YY}^{-1}\boldsymbol{\Sigma}_{XY}^{\mathsf{T}} -\lambda_k\boldsymbol{\Sigma}_{XX}\right]\mathbf{a}_k=\mathbf{0}\\[6pt] \left[\boldsymbol{\Sigma}_{XY}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}^{-1}\boldsymbol{\Sigma}_{XY} -\lambda_k\boldsymbol{\Sigma}_{YY}\right]\mathbf{b}_k=\mathbf{0} \end{cases}\]
Donde \(\lambda_k\) satisface
\[\begin{cases} \left|\boldsymbol{\Sigma}_{XY}\boldsymbol{\Sigma}_{YY}^{-1}\boldsymbol{\Sigma}_{XY}^{\mathsf{T}} -\lambda_k\boldsymbol{\Sigma}_{XX}\right|=0\\[6pt] \left|\boldsymbol{\Sigma}_{XY}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}^{-1}\boldsymbol{\Sigma}_{XY} -\lambda_k\boldsymbol{\Sigma}_{YY}\right|=0 \end{cases}\]
Observe que \(\lambda_k\) es el autovalor más grande de la matriz.
\[\mathbf{A}=\boldsymbol{\Sigma}_{XX}^{-1}\boldsymbol{\Sigma}_{XY}\boldsymbol{\Sigma}_{YY}^{-1}\boldsymbol{\Sigma}_{XY}^{\mathsf{T}}\]
o equivalentemente de la matriz
\[\mathbf{B}=\boldsymbol{\Sigma}_{YY}^{-1}\boldsymbol{\Sigma}_{XY}^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}^{-1}\boldsymbol{\Sigma}_{XY}\]
Ahora bien, a pesar que \(\lambda_k\) es el mismo en \(\mathbf{A}\) y \(\mathbf{B}\), tiene asociados diferentes autovectores:
Finalmente,
\[\mathbf{a}_k=\boldsymbol{\Sigma}_{XX}^{-1/2}\mathbf{e}_k\]
\[\mathbf{b}_k=\boldsymbol{\Sigma}_{YY}^{-1/2}\mathbf{f}_k\]
y por lo tanto, el \(k\)–ésimo par de variables canónicas queda dado por
\[U_k=\mathbf{a}_k^{\mathsf{T}}\mathbf{X} = \mathbf{e}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}^{-1/2}\mathbf{X}\]
\[V_k=\mathbf{b}_k^{\mathsf{T}}\mathbf{Y} = \mathbf{f}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}^{-1/2}\mathbf{Y}\]
La correlación canónica es la correlación entre \(U_k\) y \(V_k\) en valor absoluto:
\[\rho_k^{*2}=\lambda_k=\left|\mathrm{Cor}(U_k,V_k)\right|^{2} = \frac{\left(\mathbf{a}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{XY}\mathbf{b}_k\right)^{2}} {\left(\mathbf{a}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{XX}\mathbf{a}_k\right)\left(\mathbf{b}_k^{\mathsf{T}}\boldsymbol{\Sigma}_{YY}\mathbf{b}_k\right)}\]
Observación: \(\sqrt{\lambda_k}>0\).
Las correlaciones entre las variables originales y las variables canónicas son conocidas como cargas canónicas.
Los datos a analizar, fueron consolidados a partir de fuentes como el Banco mundial, el Fondo Monetario Internacional, la Comisión Europea y la International Disaster Database. Incluye 23 variables y 30 individuos, con información sobre indicadores macroeconómicos, emisiones de gases efecto invernadero y desastres naturales. Con el fin de mitigar el efecto de temporalidad se aplicó un filtro y se consideró unicamente datos del año 2022. A continuación, se presenta la descripción de las variables incluidas en el dataset.
Diccionario de datos
| Variable | Nombre completo | Descripción |
|---|---|---|
| PIB | PIB (MM de dólares a precios actuales) | Valor total de los bienes y servicios finales producidos por un país, medido en millones de dólares corrientes. |
| IED | Inversión Extranjera Directa (US$ a precios actuales) | Flujos de inversión provenientes del exterior destinados a adquirir participación o control en empresas del país, medidos en dólares corrientes. |
| Exp_Netas | Exportaciones Netas (US$ a precios actuales) | Diferencia entre el valor de las exportaciones y las importaciones de bienes y servicios, medida en dólares corrientes. |
| Deuda_externa | Deuda externa (MM de dólares a precios actuales) | Monto total de obligaciones financieras de un país con acreedores externos, expresado en millones de dólares corrientes. |
| Consumo | Consumo (US$ a precios actuales) | Gasto total en bienes y servicios realizado por los hogares, el gobierno u otros agentes, medido en dólares corrientes. |
| CO2 | Emisiones de CO2 (Mt CO2eq/yr) | Cantidad total de emisiones de dióxido de carbono, expresada en millones de toneladas de CO2 equivalente por año. |
| CH4 | Emisiones de Metano (kt de equivalente de CO2) | Emisiones de metano expresadas en kilotoneladas de CO2 equivalente. |
| N2O | Emisiones de óxido nitroso (kt de equivalente de CO2) | Emisiones de óxido nitroso expresadas en kilotoneladas de CO2 equivalente. |
| D_Clim | Desastres Climatológicos | Número o registro de eventos asociados a condiciones climáticas de larga duración, como sequías o incendios forestales. |
| D_Geof | Desastres Geofísicos | Número o registro de eventos originados por procesos geológicos, como terremotos, erupciones volcánicas o movimientos en masa secos. |
| D_Met | Desastres Meteorológicos | Número o registro de eventos atmosféricos de corta duración, como tormentas, huracanes o vendavales. |
| D_Hidr | Desastres Hidrológicos | Número o registro de eventos relacionados con el comportamiento del agua, como inundaciones o deslizamientos asociados a lluvias. |
| Flood_Ind | Flood occurrence Indicator (WRI) | Indicador de ocurrencia de inundaciones, usado para medir la exposición o presencia de eventos de inundación. |
| Pct_Afect | Porcentaje población afectada por sequías, inundaciones y temperaturas extremas | Proporción de la población que ha sido afectada por eventos climáticos extremos e hidrológicos. |
| Temp_Prom | Promedio de temperatura (°C) | Temperatura media registrada en un país o territorio, expresada en grados Celsius. |
| Clim_Ext | Inundaciones y temperaturas extremas | Indicador relacionado con la ocurrencia o impacto de inundaciones y eventos de temperatura extrema. |
| Agua_Renov_M2 | Total renewable water resources per M2 (10^9 m3/year*KM2) | Disponibilidad de recursos hídricos renovables ajustada por unidad de superficie. |
| Bio_Index | Global Biodiversity Index | Índice global que resume el nivel de biodiversidad de un país o territorio. |
| HDI | Human Development Index (HDI) | Índice compuesto que mide el nivel de desarrollo humano a partir de salud, educación e ingreso. |
| Gasto_ID | Gasto en I+D (% del PIB) | Porcentaje del PIB destinado a actividades de investigación y desarrollo. |
| Est_Pol | Political Stability and Absence of Violence/Terrorism: Estimate | Indicador que mide la estabilidad política y la ausencia de violencia o terrorismo en un país. |
El ACC es una tecnica que tiene como objetivo estudiar la relacion lineal existente entre dos conjuntos de variables. En esta ocasión, puede resultar pertinente su aplicación debido a que el dataset cuenta con conjuntos de variables que corresponden a datos macroeconomicos, emisiones de gases efecto invernadero y desastres naturales. Esto facilita el análisis de la relación lineal entre estos conjuntos de variables.
library(readxl)
library(tidyverse)
library(psych)
library(CCA)
library(CCP)
library(candisc)
dataset <-read_excel('dataset_limpio.xlsx')
dataset <-dataset[,-c(1,23,24)]
X<- dataset[,1:5]
Y<- dataset[,6:8]
Lo primero de todo, es determinar si el ACC es una herramienta válida para ser aplicada sobre el conjunto de datos. Para ello, vamos a calcular la matriz de correlaciones cruzadas, la cual, nos permite evaluar si las correlaciones entre nuestros grupos de variables son lo suficientemente fuertes como para justificar su uso.
Teniendo en cuenta, esta matriz podemos observar que las correlaciones son los suficientemente fuertes. La única variable que genera conflicto es Exportaciones Netas( Exp_Netas), esto porque esta variable se construye a partir de la siguiente formula Exp_Netas = Exportaciones(X) - Importaciones(M). Por tanto, aunque exportaciones e importaciones por separado pueden tener relación con las variables de GEI, al combinarse en una sola variable esa relación se diluye y como resultado obtenemos una correlacion muy baja.
Para aplicar ACC se utilizará la función cc perteneciente al paquete CCA
Esta función permite calcular los coeficientes de las variables canónicas, la correlación entre las variables canónicas, etc.
#Como las variables estan en diferentes escalas usamos la función scale
zX<-scale(X)
zY<-scale(Y)
# ACC
acc<-cc(zX,zY)
La correlación canónica calcula la correlación entre los grupos de variables artificiales que hemos creado (variables canónicas).
A continuación, se visualiza dicho cálculo.
rho<-acc$cor;rho
## [1] 0.9922016 0.8512207 0.3060386
Observación: El número de variables canónicas(k) que puede ser obtenido es \(k =\text{mín}\{p,q\}\). Para nuestro caso, \(p\) = 5, \(q\) = 3. Por tanto, obtendremos 3 de ellas.
Una vez obtenidas las correlaciones canónicas, es necesario determinar si estas son significativas para el análisis. Para ello, resulta conveniente utilizar la prueba p.asym(), en donde
H0: No hay relación canónica lineal entre los dos conjuntos de variables que se están comparando.
Esto quiere decir que
\[H_0: \rho{1} = \rho{2} = \cdots =\rho{m} =0\]
en donde, \(m =\text{mín}\{p,q\}\).
H1: Al menos una correlación canónica es distinta de cero.
Adicionalmente, p.asym() hace pruebas secuenciales y ,por tanto:
Para la primera prueba evalúa si todas las correlaciones canónicas son cero
La segunda evalúa si, excluyendo la primera, las restantes son cero.
la tercera excluye las dos primeras, y así sucesivamente.
Resulta necesario destacar que, la prueba puede ser aplicada bajo el cumplimiento de varios supuestos clave. Dichos supuestos son, el cumplimiento de la normalidad multivariada y la
Por tanto, se evaluará si el set de datos cumple con la normalidad multivariada. Para ello, se considera pertinente utilizar la prueba Doornik-Hansen, puesto que, esta es recomendada para \(p\) > 5 y \(n > p\)
A continuación, se ejecuta la prueba:
NM<-MVN::mvn(data = dataset, mvn_test = "doornik_hansen");NM$multivariate_normality
## Registered S3 method overwritten by 'lme4':
## method from
## na.action.merMod car
## Test Statistic df p.value Method MVN
## 1 Doornik-Hansen 1812.105 42 <0.001 asymptotic ✗ Not normal
H0: Indica que la datos provienen de una distribucion normal multivariada
H1: Indica que los datos NO provienen de una distribución normal multivariada.
Debido a que, el p-valor obtenido a partir de la prueba es igual a 0, la hipotesis nula es rechazada y por ende los datos no provienen de una distribución normal multivariada. En consecuencia, utilizar la prueba p.asym() no es pertinente para determinar la cantidad de variables canónicas a usar. Por lo anterior, se utilizará otro criterio para determinar la cantidad de variables canónicas que resulta pertinente incluir en el análisis.
A pesar de que la prueba no cumple con las condiciones para su aplicación, a continuación se muestra la ejecución del código junto con la interpretación de los resultados a modo de ilustrativo
#p.asym(rho,N,p,q)
#p.asym(acc$cor,30,5,3)
p.asym(rho, nrow(X), ncol(X), ncol(Y))
## Wilks' Lambda, using F-approximation (Rao's F):
## stat approx df1 df2 p.value
## 1 to 3: 0.003878191 26.3821444 15 61.13371 0.000000e+00
## 2 to 3: 0.249627309 5.7585815 8 46.00000 4.332846e-05
## 3 to 3: 0.906340396 0.8267058 3 24.00000 4.921287e-01
Se podría afirmar que tanto la primera, como la segunda correlación canónica son significativas. Mientras que, el tercer grupo de variables artificiales debería ser excluido del análisis.
Debido a que, la prueba p.asym() no era adecuada para determinar la cantidad de variables canónicas pertinentes para ser incluidas en el análisis, se revisó el índice de redundacia. Esta medida permite examinar en que medida las variables canónicas correspondientes al conjunto \(X\) pueden explicar la variabilidad del conjunto \(Y\), y viceversa.
El índice se puede calcular en tres pasos:
Calcular la varianza compartida del conjunto(Shared Variance)
Esto se calcula haciendo uso de las cargas conónicas con la siguiente formula
\[SV = \frac{\sum{L^2_i}}{p}\]
En donde \(L_i\) son las cargas canónicas de cada variable \(i\), y \(p\) corresponde al número de variables en el conjunto.
Esto se debe realizar para los dos conjuntos de variables X e Y
\[SV_{X_n}=\frac{L^2_{X_{n1}}+ \cdots + L^2_{X_{ni}}}{i}\]
\[SV_{Y_n}=\frac{L^2_{Y_{n1}}+ \cdots + L^2_{Y_{nj}}}{j}\]
Donde,
\(SV_{X_n}\) representa la varianza compartida de la n-ésimo variate del conjunto de variables \(X\)
\(SV_{Y_n}\) representa la varianza compartida del n-ésimo variate del conjunto de variables \(Y\)
\(L^2_{X_{ni}}\) es el cuadrado de la carga canónica de la variable \(i\) del conjunto \(X\) en el variate \(n\)
\(L^2_{Y_{nj}}\) es el cuadrado de la carga canónica de la variable \(j\) del conjunto \(Y\) en el variate \(n\)
\(i\) es el número de variables en \(X\)
\(j\) es el número de variables en \(Y\)
Observación: El variate canónico corresponde a una de las combinaciones lineales de variables (canónicas) dentro de un par canónico. Es decir, del primer par \(U_1,V_1\) el variate podría ser \(U_1\) o \(V_1\)
Calcular la varianza explicada compartida entre variates.
Esto es simplemente calcular el cuadrado de la correlación canónica
\[Rc^2\]
Esto se interpreta como la cantidad de varianza que comparten los variates de \(X\) e \(Y\)
Con dicha información calcular el índice de redundancia
Finalmente, la formula para calcular el índice es
\[RI = SV\times Rc^2\]
Esto se calcula en ambas direcciones.
Es decir, de \(X\) a \(Y\) se calcula
\[RI_{Y|X} = SV_y \times Rc^2\]
A partir de esto, se puede medir cuánta varianza de \(Y\) explican las \(X\)
Por otro lado, de \(X\) a \(Y\)
\[RI_{Y|X}=SV_y \times Rc^2\]
Con esta información se puede medir cuanta varianza de \(Y\) explican las \(X\)
Teniendo en cuenta esta información, se calculará la redundancia a partir de la función redundancy perteneciente al paquete “candisc”
cc<-cancor(X,Y)
redundancy(cc)
##
## Redundancies for the X variables & total X canonical redundancy
##
## Xcan1 Xcan2 Xcan3 total X|Y
## 0.32181 0.01416 0.04229 0.37826
##
## Redundancies for the Y variables & total Y canonical redundancy
##
## Ycan1 Ycan2 Ycan3 total Y|X
## 0.77771 0.02278 0.01673 0.81721
Interpretación redundancia
En este caso, la redundancia se interpreta de una manera similar al \(R^2\) en regresión lineal. Es decir, para el primer caso el valor correspondiente al índice de redundancia total es 0.37(total \(X|Y\)) esto quiere decir que las variables pertenecientes al subconjunto \(Y\) explican el 37% de la variabilidad de \(X\). Por otro lado, el índice correspondiente a la redundancia total para el subconjunto \(Y\) es 0.81(total \(Y|X\)), esto quiere decir que las variables pertenecientes a \(X\) logran explicar el 81% de la variabilidad de \(Y\).
Asimismo, se puede observar que es suficiente con emplear tan solo el primer par de variables canónicas para el análisis, esto ya que, con el primer variate canónico \(U_1\) se obtiene la mayor cantidad de varianza para el conjunto \(X\) que puede ser explicada por \(Y\). De igual forma, con el primer variate canónico \(Y_1\) es posible conseguir la mayor cantidad de varianza para el conjunto \(Y\) que puede ser explicada por \(X\).
Ahora se revisaran los coeficientes de las respectivas variables. A partir de ellos, se puede comprender que variables contribuyen en mayor o menor medida a la construcción de las variables artificiales y también pueden contribuir a la interpretación de la relación entre dichos conjuntos.
Grupo de variables \(U\)
acc$xcoef[,1]
## PIB IED Exp_Netas Deuda_externa Consumo
## -3.6410415 0.4250691 0.1203644 -0.2246329 2.8060716
\[U_1 = -3.641\,PIB + 0.42\,IED + 0.1203\,Exp\_Netas - 0.224\,Deuda\_Externa + 2.806\,Consumo\]
En este caso, el PIB y el Consumo (en una menor medida) contribuyen a la construcción de esta primera variable canónica. La relación entre el PIB y la variable es inversa, mientras que la relación con el consumo es directa, según el respectivo coeficiente. Por último, Deuda Externa, Exportaciones Netas e IED tienen coeficientes con valores bastante bajos, por lo que es posible afirmar que no tienen tanta influencia sobre la construcción de la variable artificial.
Grupo de variables \(V\)
acc$ycoef[,1]
## CO2 CH4 N2O
## -1.2862064 0.1342778 0.1938017
\[V_1 = -1.286\,\text{CO}_2 + 0.134\,\text{CH}_4 + 0.193\,\text{N}_2\text{O}\]
Para la construcción de la primera variable canónica, CO2 tiene el coeficiente de mayor magnitud y presenta una relación inversamente proporcional a \(V_1\) , el resto no tienen un gran impacto en la construcción de la variable.
Las cargas canónicas representan las correlaciones entre las variables originales y las variables canónicas. Estas resultan útiles para comprender el comportamiento entre los grupos de variables. A continuación se presenta su calculo y análisis.
Cargas canónicas entre \(X\) y \(U\)
#Cargas Canónicas cruzadas
cargasCanon <- comput(zX, zY, acc)
#X y U
cargasCanon$corr.X.xscores[,1]
## PIB IED Exp_Netas Deuda_externa Consumo
## -0.7807257 -0.5932922 -0.2301180 -0.5122815 -0.5979326
Con respecto a las cargas canónicas entre \(X\) y \(U_1\), se puede decir que para todas las variables del conjunto la correlación es inversamente proporcional. Es decir que, a medida que aumenta el valor de la variable canónica menor será la magnitud de las variables económicas y vice versa. Seguidamente, se presenta un gráfico de barras que permite ilustrar dichas cargas
load_X<-cargasCanon$corr.X.xscores[,1]
load_X<-load_X[order(abs(load_X), decreasing = TRUE)]
barplot(load_X, las=1, main="Cargas de X en U1",ylab = "Carga canónica", col="skyblue",ylim =c(-1,0))
abline(h=0, lty=2)
Cargas canónicas entre \(Y\) e \(V\)
# Y e V
cargasCanon$corr.Y.yscores[,1]
## CO2 CH4 N2O
## -0.9911743 -0.8028189 -0.8619837
Con respecto a las cargas canónicas entre \(Y\) y \(V_1\), se puede decir que para todas las variables del conjunto la correlación es inversamente proporcional. Es decir que, a medida que aumenta el valor de la variable canónica menor será la magnitud de las variables de gases efecto invernadero y vice versa. A continuación, se presenta un gráfico de barras que permite ilustrar dichas cargas
load_Y<-cargasCanon$corr.Y.yscores[,1]
load_Y<-load_Y[order(abs(load_Y),decreasing = TRUE)]
barplot(load_Y, las=1, main="Cargas de Y en V1",ylab = "Carga canónica", col="red",ylim =c(-1,0))
abline(h=0, lty=2)
Cargas canónicas entre \(X\) y \(V\)
cargasCanon$corr.X.yscores[,1]
## PIB IED Exp_Netas Deuda_externa Consumo
## -0.7746373 -0.5886654 -0.2283235 -0.5082865 -0.5932697
Las cargas canónicas entre \(X\) y \(V_1\) son todas (excluyendo a Exportaciones Netas) de alta magnitud e inversamente proporcionales. Ahora, se procede a visualizarlas
load_XV<-cargasCanon$corr.X.yscores[,1]
load_XV<-load_XV[order(abs(load_XV),decreasing = TRUE)]
barplot(load_XV, las=1, main="Cargas de X en V1",ylab = "Carga canónica", col="orange",ylim =c(-1,0))
abline(h=0, lty=2)
Cargas canónicas entre \(Y\) e \(U\)
cargasCanon$corr.Y.xscores[,1]
## CO2 CH4 N2O
## -0.9834447 -0.7965582 -0.8552616
Las cargas canónicas entre \(Y\) y \(U_1\) son todas de alta magnitud e inversamente proporcionales. A continuación, se visualizan dichas cargas
load_YU<-cargasCanon$corr.Y.xscores[,1]
load_YU<-load_YU[order(abs(load_YU),decreasing = TRUE)]
barplot(load_YU, las=1, main="Cargas de Y en U1",ylab = "Carga canónica", col="orange",ylim =c(-1,0))
abline(h=0, lty=2)
Interpretación de las cargas canónicas
Como se examinó previamente, las cargas entre \(X\) y la variable canónica \(U_1\) eran negativas para todas las variables, esto sucedió de igual forma para \(Y\) y la variable canónica \(V_1\). Posteriormente, se analizaron las cargas entre \(X\) y \(V_1\), además de \(Y\) y \(U_1\), en donde, de igual forma las cargas eran negativas para ambos grupos. Por dicha razón, podemos concluir que la relación lineal es directamente proporcional entre los dos grupos de variables.
Adicionalmente, fue posible observar que las variables que más aportaron a la construcción de las variables canónicas y que tenían cargas más fuertes en sus respectivos grupos eran PIB y CO2. Esto hace bastante sentido, ya que el PIB es una medida macroeconómica que cuantifica la capacidad de producir bienes y servicios en un país determinado. Mientras que por su lado, la variable CO2 recoge las emisiones de dioxido de carbono producidas por un país. Teniendo en cuenta esto, las variables tienen una relación lineal directa porque un mayor nivel de producción implica un mayor uso de recursos, que normalmente implica una mayor dependencia de fuentes basadas en combustibles fósiles.