Professional Documents
Culture Documents
2023-10-27
Analiza Kanoniczna
Analiza kanoniczna umożliwa badanie zależności między dwoma zestawami zmiennych zależnych.
library(ggcorrplot)
library(CCA)
library(tidyverse)
library(dplyr)
library(yacca)
ggcorrplot(cor(X,Y), lab=T)
mod_kan$xcoef
## [,1] [,2]
## Sepal.Length -0.8851871 0.4800626
## Sepal.Width 0.3726619 0.9354889
mod_kan$ycoef
## [,1] [,2]
## Petal.Length -1.4989586 -3.387093
## Petal.Width 0.5288422 3.666006
Pary kanoniczne:
U 1 = − 0.89 ⋅ SL + 0.37 ⋅ SW
V 1 = − 1.5 ⋅ PL + 0.37 ⋅ PW
U 2 = 0.48 ⋅ SL + 0.37 ⋅ SW
V 2 = − 3.39 ⋅ PL + 0.37 ⋅ PW
Wagi mówią o tym, która z cech jest ważniejsza dla danej zmiennej kanonicznej. Np dla U 1 większą wagę ma Sepal.Length (patrzymy na
wartość bezwzględną).
head(mod_kan$scores$xscores)
## [,1] [,2]
## [1,] 1.1730856 0.5191447
## [2,] 0.9593861 -0.6699407
## [3,] 1.3441807 -0.3566336
## [4,] 1.3655796 -0.6292350
## [5,] 1.3654828 0.6757983
## [6,] 1.1943878 1.5515766
head(mod_kan$scores$yscores)
## [,1] [,2]
## [1,] 1.308897 -0.2820104
## [2,] 1.308897 -0.2820104
## [3,] 1.393809 -0.0901396
## [4,] 1.223984 -0.4738813
## [5,] 1.308897 -0.2820104
## [6,] 1.192920 0.1042833
mod_kan$scores$corr.X.xscores
## [,1] [,2]
## Sepal.Length -0.9290009 0.3700774
## Sepal.Width 0.4767332 0.8790480
mod_kan$scores$corr.Y.xscores
## [,1] [,2]
## Petal.Length -0.9313286 0.01769543
## Petal.Width -0.8604722 0.05015620
mod_kan$scores$corr.X.yscores
## [,1] [,2]
## Sepal.Length -0.8741611 0.04586624
## Sepal.Width 0.4485912 0.10894647
mod_kan$scores$corr.Y.yscores
## [,1] [,2]
## Petal.Length -0.9897548 0.1427778
## Petal.Width -0.9144533 0.4046915
Pierwsza kolumna xscores to wartości pierwszej zmiennej kanonicznej dla każdego ze 150 przypadków. Druga kolumna to wartości drugiej
zmiennej kanonicznej. Analogicznie yscores .
corr.X.xscores - korelacje pomiędzy pierwotnymi zmiennymi X ze zmiennymi kanonicznymi (pierwsza kolumna korelacje z U 1, druga kolumna
korelacje z U 2).
corr.Y.xscores - korelacje krzyżowe. Pierwotne Y z U 1 i U 2. W naszym przypadku obie silnie ujemnie skorelowane z U 1
cor.X.yscores - krzyżowe X z V 1 i V 2
##
## Canonical Correlation Analysis - Summary
##
##
## Canonical Correlations:
##
## CV 1 CV 2
## 0.9409690 0.1239369
##
## Shared Variance on Each Canonical Variate:
##
## CV 1 CV 2
## 0.88542265 0.01536035
##
## Bartlett's Chi-Squared Test:
##
## rho^2 Chisq df Pr(>X)
## CV 1 0.88542 319.66076 4 <2e-16 ***
## CV 2 0.01536 2.26775 1 0.1321
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Canonical Variate Coefficients:
##
## X Vars:
## CV 1 CV 2
## Sepal.Length 0.8851871 0.4800626
## Sepal.Width -0.3726619 0.9354889
##
## Y Vars:
## CV 1 CV 2
## Petal.Length 1.4989586 -3.387093
## Petal.Width -0.5288422 3.666006
##
##
## Structural Correlations (Loadings):
##
## X Vars:
## CV 1 CV 2
## Sepal.Length 0.9290009 0.3700774
## Sepal.Width -0.4767332 0.8790480
##
## Y Vars:
## CV 1 CV 2
## Petal.Length 0.9897548 0.1427778
## Petal.Width 0.9144533 0.4046915
##
##
## Fractional Variance Deposition on Canonical Variates:
##
## X Vars:
## CV 1 CV 2
## Sepal.Length 0.8630427 0.1369573
## Sepal.Width 0.2272745 0.7727255
##
## Y Vars:
## CV 1 CV 2
## Petal.Length 0.9796145 0.02038549
## Petal.Width 0.8362248 0.16377523
##
##
## Canonical Communalities (Fraction of Total Variance
## Explained for Each Variable, Within Sets):
##
## X Vars:
## Sepal.Length Sepal.Width
## 1 1
##
## Y Vars:
## Petal.Length Petal.Width
## 1 1
##
##
## Canonical Variate Adequacies (Fraction of Total Variance
## Explained by Each CV, Within Sets):
##
##
## X Vars:
## CV 1 CV 2
## 0.5451586 0.4548414
##
## Y Vars:
## CV 1 CV 2
## 0.90791964 0.09208036
##
##
## Redundancy Coefficients (Fraction of Total Variance
## Explained by Each CV, Across Sets):
##
##
## X | Y:
## CV 1 CV 2
## 0.482695805 0.006986523
##
## Y | X:
## CV 1 CV 2
## 0.803892619 0.001414387
##
##
## Aggregate Redundancy Coefficients (Total Variance
## Explained by All CVs, Across Sets):
##
## X | Y: 0.4896823
## Y | X: 0.805307
Canonical correlations:
CV1 korelacja kanoniczna pomiędzy pierwszą parą 0.94
Shared Variance on Each Canonical Variate - podniesiona do kwadraty wartość współczynnika korelacji (czyli współczynnika determinacji)
Bartlett’s Chi-squared test - czy zestawy par kanonicznych są ze sobą istotnie skorelowane.
Pierwszy wiersz - H 0: wszystkie korelacje kanoniczne są równe zero. Odrzucamy H 0 - jedna z nich nie jest zerowa (są ustawione od
największej do najmniejszej)
Z pierwszego wiersza u nas wynika, że pierwsza para kanoniczna jest istotnie skorelowana.
Drugi wiersz: testowanie H 0, ale po usunięciu z modelu pierwszej pary kanonicznej (najmocniej skorelowanej).
Canonical Variate Coefficients - współczynniki wagowe (wcześniej jako xcoef , wynik różni się od poprzedniego co do znaku, ale to nic, to nie
wpływa na interpretację)
Structural Correlations (Loadings) - korelacje X z kanonicznymi. SL 0.93, SW -0.48 (drugiej już nie interpretujemy, bo jest nieistotna). Korelacje Y z
kanonicznymi PL 0.99, PW 0.91
Fractional Variance Deposition on Canonical variates - powyższe współczynniki korelacji, podniesione do kwadratu. Pomagają ocenić, jaką część
wariancji pierwotnych zmiennych wyjaśnia zmienna kanoniczna.
Dla zmiennej U 1: 86% zmienności SL wyjaśnione jest przez pierwszą zmienną kanoniczną. 22% zmienności sw wyjaśnione jest przez
pierwszą zmienną kanoniczną.
Dla zmiennej V 1: 98% PL jest wyjaśnione, 84% PW jest wyjaśnione przez zmienną kanoniczną V 1.
Canonical Communalities (fraction of total variance explained for each variable, within sets):
100% zmienności zmiennej sepal (obu) zostało wyjaśnione przez łącznie obie zmienne kanoniczne. Dla Petal także jest to 100%.
Redundancy Coefficients
XIY - przeciętnie 48% zmienności zmiennych Sepal da się wyjaśnić przez kanoniczną przy ustalonych zmiennych Y (Petal).
YIX - przeciętnie 80% zmienności zmiennych Petal da się wyjaśnić poprzez pierwszą parę kanoniczną przy ustalonych zmiennych x (Sepal).
helio.plot(mod_kan1, cv= 1)
im bliżej słupek jest zewnętrznego lub wewnętrznego okręgu tym bliżej 1; czarny dodatnia wartość, biały ujemna.
plot(mod_kan1)
pierwszy wykres - to co w teśćie Barletta