Judul Kasus: Analisis Hubungan Kanonik antara Atribut Psikologis Siswa dengan Prestasi Akademik Standar.
Deskripsi Masalah: Kasus ini bertujuan untuk mengetahui apakah terdapat pola hubungan yang signifikan antara kondisi psikologis siswa dengan kemampuan akademik mereka di berbagai mata pelajaran. Analisis Korelasi Kanonik (CCA) digunakan karena kedua sisi (psikologis dan akademik) terdiri dari banyak variabel (multivariat).
Sumber Data: Data sekunder yang diperoleh dari repositori publik UCLA Institute for Digital Research and Education. Dataset ini berisi observasi dari 600 siswa. Link akses: https://stats.idre.ucla.edu/stat/data/mmreg.csv
Data yang digunakan terdiri dari dua set variabel:
Set X terdiri atas atribut psikologis siswa:
Set Y terdiri atas atribut akademik:
## Warning: package 'CCA' was built under R version 4.4.3
## Loading required package: fda
## Warning: package 'fda' was built under R version 4.4.3
## Loading required package: splines
## Loading required package: fds
## Warning: package 'fds' was built under R version 4.4.3
## Loading required package: rainbow
## Warning: package 'rainbow' was built under R version 4.4.3
## Loading required package: MASS
## Warning: package 'MASS' was built under R version 4.4.3
## Loading required package: pcaPP
## Warning: package 'pcaPP' was built under R version 4.4.3
## Loading required package: RCurl
## Warning: package 'RCurl' was built under R version 4.4.3
## Loading required package: deSolve
## Warning: package 'deSolve' was built under R version 4.4.3
##
## Attaching package: 'fda'
## The following object is masked from 'package:graphics':
##
## matplot
## Loading required package: fields
## Warning: package 'fields' was built under R version 4.4.3
## Loading required package: spam
## Warning: package 'spam' was built under R version 4.4.3
## Spam version 2.11-1 (2025-01-20) is loaded.
## Type 'help( Spam)' or 'demo( spam)' for a short introduction
## and overview of this package.
## Help for individual functions is also obtained by adding the
## suffix '.spam' to the function name, e.g. 'help( chol.spam)'.
##
## Attaching package: 'spam'
## The following objects are masked from 'package:base':
##
## backsolve, forwardsolve
## Loading required package: viridisLite
## Warning: package 'viridisLite' was built under R version 4.4.2
## Loading required package: RColorBrewer
##
## Try help(fields) to get started.
## Warning: package 'ggplot2' was built under R version 4.4.3
data_siswa <- read.csv("https://stats.idre.ucla.edu/stat/data/mmreg.csv")
X_psikologis <- data_siswa[, c("locus_of_control", "self_concept", "motivation")]
Y_akademik <- data_siswa[, c("read", "write", "math", "science")]
str(X_psikologis)## 'data.frame': 600 obs. of 3 variables:
## $ locus_of_control: num -0.84 -0.38 0.89 0.71 -0.64 1.11 0.06 -0.91 0.45 0 ...
## $ self_concept : num -0.24 -0.47 0.59 0.28 0.03 0.9 0.03 -0.59 0.03 0.03 ...
## $ motivation : num 1 0.67 0.67 0.67 1 0.33 0.67 0.67 1 0.67 ...
## 'data.frame': 600 obs. of 4 variables:
## $ read : num 54.8 62.7 60.6 62.7 41.6 62.7 41.6 44.2 62.7 62.7 ...
## $ write : num 64.5 43.7 56.7 56.7 46.3 64.5 39.1 39.1 51.5 64.5 ...
## $ math : num 44.5 44.7 70.5 54.7 38.4 61.4 56.3 46.3 54.4 38.3 ...
## $ science: num 52.6 52.6 58 58 36.3 58 45 36.3 49.8 55.8 ...
Dilakukan standarisasi pada data sebelum analisis korelasi kanonik.
## locus_of_control self_concept motivation
## [1,] -1.3972273 -0.34714716 0.98960495
## [2,] -0.7109468 -0.67315130 0.02674608
## [3,] 1.1837841 0.82930256 0.02674608
## [4,] 0.9152396 0.38990568 0.02674608
## [5,] -1.0988445 0.03555335 0.98960495
## [6,] 1.5120052 1.26869944 -0.96529033
## read write math science
## [1,] 0.2868625 1.2455891 -0.7805848 0.08619939
## [2,] 1.0688098 -0.8929084 -0.7593415 0.08619939
## [3,] 0.8609503 0.4436526 1.9810433 0.64254604
## [4,] 1.0688098 0.4436526 0.3028231 0.64254604
## [5,] -1.0196823 -0.6255962 -1.4285052 -1.59314327
## [6,] 1.0688098 1.2455891 1.0144734 0.64254604
di mana: X1 = locus_of_control X2 = self_concept X3 = motivation Y1 = read Y2 = write Y3 = math Y4 = science
## [1] "Tabel Korelasi antar variabel Y dan X"
## X1 X2 X3
## Y1 0.3736 0.0607 0.2106
## Y2 0.3589 0.0194 0.2542
## Y3 0.3373 0.0536 0.1950
## Y4 0.3246 0.0698 0.1157
Secara keseluruhan, peubah read (Y1),
write(Y2), math(Y3), dan
science(Y4) memiliki korelasi positif dengan peubah
locus_of_control(X1) self_concept (X2), dan
motivation (X3). Namun, kekuatan korelasinya cenderung
rendah, sehingga hubungan linear antar variabel individu relatif lemah.
Korelasi paling tinggi adalah antara read (Y1),
write(Y2), math(Y3), dan
science(Y4) dengan locus_of_control(X1)
kisaran 0.32-0.37. Korelasi paling rendah adalah antara
read (Y1), write(Y2), math(Y3),
dan science(Y4) dengan self_concept (X2)
kisaran 0.01 - 0.06, yang mengindikasikan hampir tidak ada hubungan
linear antar variabel tersebut. Meskipun hubungan linear antar variabel
X–Y relatif lemah, asumsi linearitas masih terpenuhi secara praktis,
sehingga analisis korelasi kanonik tetap dapat dilanjutkan.
data_gabung <- data.frame(X_baku, Y_baku)
mu <- colMeans(data_gabung)
sigma <- cov(data_gabung)
D2 <- mahalanobis(data_gabung, center = mu, cov = sigma)
sorted_D2 <- sort(D2)
n <- nrow(data_gabung)
p <- ncol(data_gabung)
chi2_q <- qchisq((1:n - 0.5) / n, df = p)
plot(chi2_q, sorted_D2,
main = "Q-Q Plot Mahalanobis Distance (Uji Normalitas Ganda)",
xlab = "Chi-Square Quantile", ylab = "Mahalanobis D Square",
pch = 19, col = "black")
abline(0, 1, col = "red", lwd = 2) Garis merah menunjukkan garis lurus sedangkan tanda titik hitam menunjukkan plot sebaran data (berdasarkan quantilnya). Hasil Q-Q Plot di atas menunjukkan bahwa secara deskriptif data menyebar normal ganda karena tanda titik hitam masih berada disekitar garis merah. Setelah dilakukan pemeriksaan asumsi, selanjutnya adalah hasil luaran analisis korelasi kanonik dari prosedur di atas.
## [1] "Korelasi Pearson antar variabel Y"
## Y1 Y2 Y3 Y4
## Y1 1.0000 0.6286 0.6793 0.6907
## Y2 0.6286 1.0000 0.6327 0.5691
## Y3 0.6793 0.6327 1.0000 0.6495
## Y4 0.6907 0.5691 0.6495 1.0000
Secara keseluruhan, antar variabel Y memiliki hubungan linier positif yang kuat (>0.5).
## [1] "Tabel Pearson antar variabel X"
## X1 X2 X3
## X1 1.0000 0.1712 0.2451
## X2 0.1712 1.0000 0.2886
## X3 0.2451 0.2886 1.0000
Secara keseluruhan, antar variabel X memiliki hubungan linier positif. Namun, kekuatannya cukup lemah (<0.05).
library(CCA)
cc_model <- cc(X_baku, Y_baku)
N <- nrow(X_baku)
p <- ncol(X_baku)
q <- ncol(Y_baku)
k <- length(cc_model$cor)corr_val <- cc_model$cor
sq_corr <- corr_val^2
se_corr <- (1 - sq_corr) / sqrt(N - p - q + 2)
adj_corr_sq <- 1 - (1 - sq_corr) * ((N - 1) / (N - p - q - 1))
adj_corr <- sqrt(pmax(0, adj_corr_sq))
tabel_kanonik <- data.frame(
"Canonical_Correlation" = round(corr_val, 6),
"Adjusted_Canonical_Corr" = round(adj_corr, 6),
"Approx_Standard_Error" = round(se_corr, 6),
"Squared_Canonical_Corr" = round(sq_corr, 6)
)
cat("\n=== Tabel Korelasi Kanonik ===\n")##
## === Tabel Korelasi Kanonik ===
## Canonical_Correlation Adjusted_Canonical_Corr Approx_Standard_Error
## 1 0.446436 0.435704 0.032825
## 2 0.153359 0.109420 0.040032
## 3 0.022503 0.000000 0.040975
## Squared_Canonical_Corr
## 1 0.199306
## 2 0.023519
## 3 0.000506
Pada tabel menampilkan canonical correlation, adjusted canonical correlation, approximate standard error, and squared canonical correlation untuk masing-masing pasangan kanonik. Korelasi kanonik pertama (korelasi antara pasangan pertama dari kanonik) adalah sebesar 0.446436 . Nilai ini merepresentasikan korelasi tertinggi yang mungkin terjadi antara beberapa kombinasi linear dari X_psikologis dan beberapa kombinasi linear dari Y_akademik.
eigenvalues <- sq_corr / (1 - sq_corr)
prop_eigen <- eigenvalues / sum(eigenvalues)
cum_eigen <- cumsum(prop_eigen)
diff_eigen <- -diff(c(eigenvalues, 0))
diff_eigen <- diff_eigen[1:length(eigenvalues)]
tabel_eigen <- data.frame(
"Eigenvalue" = round(eigenvalues, 4),
"Difference" = round(diff_eigen, 4),
"Proportion" = round(prop_eigen, 4),
"Cumulative" = round(cum_eigen, 4)
)
cat("\n=== Tabel 5. Proporsi Keragaman (Eigenvalues) ===\n")##
## === Tabel 5. Proporsi Keragaman (Eigenvalues) ===
## Eigenvalue Difference Proportion Cumulative
## 1 0.2489 0.2248 0.9101 0.9101
## 2 0.0241 0.0236 0.0881 0.9981
## 3 0.0005 0.0005 0.0019 1.0000
Tabel menampilkan besarnya nilai proporsi keragaman. Proporsi keragaman menunjukkan baik tidaknya peubah kanonik yang dipilih untuk menerangkan keragaman asal. Semakin besar nilai proporsi keragaman maka semakin baik peubah-peubah kanonik yang dipilih menerangkan keragaman asal. Proporsi keragaman untuk memilih jumlah peubah kanonik yang tepat digunakan untuk menjelaskan hubungan antara gugus peubah dependen dengan independen. Berdasarkan kontribusi keragaman yang dijelaskan oleh fungsi kanonik terlihat fungsi kanonik pertama menjelaskan kergaman total sebesar 91.01%, sedangkan yang kedua 0.08%, dan ketiga 0,001%. Berdasrkan proprosi keragaman diatas, dengan menggunakan kriteria batasan minimal memiliki kontribusi keragaman 70%, maka cukup mengambil fungsi kanonik yang pertama saja.
Akan tetapi, perlu juga dilihat uji rasio kemungkinan (likelihood ratio) untuk memutuskan penentuan fungsi kanonik yang di ambil.
library(CCA)
library(CCP)
cc_model <- cc(X_baku, Y_baku)
rho <- cc_model$cor
N <- nrow(X_baku)
p <- ncol(X_baku)
q <- ncol(Y_akademik)## Wilks' Lambda, using F-approximation (Rao's F):
## stat approx df1 df2 p.value
## 1 to 3: 0.7814670 12.7735403 12 1569.222 0.0000000
## 2 to 3: 0.9759865 2.4210265 6 1188.000 0.0248771
## 3 to 3: 0.9994936 0.1507323 2 595.000 0.8601108
## Pillai-Bartlett Trace, using F-approximation:
## stat approx df1 df2 p.value
## 1 to 3: 0.2233309300 11.9641466 12 1785 0.00000000
## 2 to 3: 0.0240253971 2.4098260 6 1791 0.02530983
## 3 to 3: 0.0005064066 0.1516944 2 1797 0.85926186
## Hotelling-Lawley Trace, using F-approximation:
## stat approx df1 df2 p.value
## 1 to 3: 0.2735079556 13.4854617 12 1775 0.00000000
## 2 to 3: 0.0245921193 2.4332536 6 1781 0.02400296
## 3 to 3: 0.0005066631 0.1509012 2 1787 0.85994364
## Roy's Largest Root, using F-approximation:
## stat approx df1 df2 p.value
## 1 to 1: 0.1993055 37.02623 4 595 0
##
## F statistic for Roy's Greatest Root is an upper bound.
stats_val <- c(res_wilks$stat[1],
res_pillai$stat[1],
res_hotelling$stat[1],
res_roy$stat[1])
approx_f <- c(res_wilks$approx[1],
res_pillai$approx[1],
res_hotelling$approx[1],
res_roy$approx[1])
num_df <- c(res_wilks$df1[1],
res_pillai$df1[1],
res_hotelling$df1[1],
res_roy$df1[1])
den_df <- c(res_wilks$df2[1],
res_pillai$df2[1],
res_hotelling$df2[1],
res_roy$df2[1])
p_vals <- c(res_wilks$p.value[1],
res_pillai$p.value[1],
res_hotelling$p.value[1],
res_roy$p.value[1])
tabel_6 <- data.frame(
Statistic = stats_val,
Approx_F = approx_f,
Num_DF = num_df,
Den_DF = den_df,
p_value = p_vals
)
rownames(tabel_6) <- c("Wilks' Lambda", "Pillai's Trace", "Hotelling-Lawley Trace", "Roy's Greatest Root")
cat("\n=== Tabel 6. Inferensia Korelasi Kanonik Secara Simultan ===\n")##
## === Tabel 6. Inferensia Korelasi Kanonik Secara Simultan ===
## Statistic Approx_F Num_DF Den_DF p_value
## Wilks' Lambda 0.78147 12.77354 12 1569.222 0
## Pillai's Trace 0.22333 11.96415 12 1785.000 0
## Hotelling-Lawley Trace 0.27351 13.48546 12 1775.000 0
## Roy's Greatest Root 0.19931 37.02623 4 595.000 0
Berdasarkan hasil pengujian inferensia kanonik secara simultan menggunakan empat statistik multivariat (Wilks’ Lambda, Pillai’s Trace, Hotelling–Lawley Trace, dan Roy’s Greatest Root), seluruh uji memberikan hasil yang signifikan pada taraf signifikansi 5%, sehingga dapat disimpulkan bahwa terdapat hubungan linier multivariat yang bermakna antara set variabel psikologis (X) dan set variabel akademik (Y). Dengan kata lain, model korelasi kanonik secara keseluruhan signifikan. Uji simultan ini diteruskan dengan uji parsial pada tabel di bawah.
tabel_7 <- data.frame(
Statistic = res_wilks$stat,
Approx_F = res_wilks$approx,
Num_DF = res_wilks$df1,
Den_DF = res_wilks$df2,
p_value = res_wilks$p.value
)
colnames(tabel_7) <- c("Likelihood Ratio", "Approximate F Value", "Num DF", "Den DF", "Pr > F")
rownames(tabel_7) <- paste("Roots", 1:nrow(tabel_7), "to", nrow(tabel_7))
cat("\n=== Tabel 7. Inferensia korelasi kanonik secara parsial ===\n")##
## === Tabel 7. Inferensia korelasi kanonik secara parsial ===
## Likelihood Ratio Approximate F Value Num DF Den DF Pr > F
## Roots 1 to 3 0.78147 12.77354 12 1569.222 0.00000
## Roots 2 to 3 0.97599 2.42103 6 1188.000 0.02488
## Roots 3 to 3 0.99949 0.15073 2 595.000 0.86011
Berdasarkan uji Wilks secara bertingkat, hubungan kanonikal antara set variabel psikologis dan set variabel akademik secara simultan signifikan (λ = 0.781, p < 0.001). Setelah kontribusi akar pertama dihilangkan, akar kedua masih menunjukkan hubungan yang signifikan (λ = 0.976, p = 0.025). Namun, akar ketiga tidak signifikan (λ = 0.999, p = 0.860). Dengan demikian, hanya dua canonical roots pertama yang layak diinterpretasikan lebih lanjut.
## [,1] [,2] [,3]
## Y1 -0.44500741 -0.01609314 -0.8924138
## Y2 -0.53581915 -0.87941356 0.9349929
## Y3 -0.18265622 -0.02782487 -0.8268251
## Y4 0.03686176 1.20559459 0.8589501
## [,1] [,2] [,3]
## X1 -0.8379311 0.5134098 0.3328964
## X2 0.1670182 0.5941199 -0.8502290
## X3 -0.4281181 -0.9034217 -0.3747775
Hasil di atas merupakan koefisien kanonik yang telah dibakukan, kita hanya perlu fokus pada kolom 1 dan kolom 2, karena berdasarkan hasil sebelumnya, hanya dua canonical roots pertama yang layak diinterpretasikan lebih lanjut. Angka-angka ini merupakan bobot (weights) yang merepresentasikan seberapa penting peubah-peubah tersebut membentuk variabel kanonik baru. Semakin besar nilai mutlaknya (tanpa melihat tanda negatif dan positif), semakin penting variabel tersebut.
Pada koefisien kanonik untuk variabel Y, urutan kontribusi relatif
peubah-peubah dependen terhadap variate pertama adalah
write (Y2), read (Y1), math (Y3),
dan science (Y4). urutan kontribusi relatif peubah-peubah
dependen terhadap variate kedua adalah science (Y4),
write (Y2), math (Y3), dan
read (Y1).
Pada koefisien kanonik untuk variabel X, urutan kontribusi relatif
peubah-peubah independen terhadap variate pertama adalah
locus_of_control (X1), motivation (X3), dan
self_concept (X2). urutan kontribusi relatif peubah-peubah
independen terhadap variate kedua adalah motivation (X3),
self_concept (X2), dan
locus_of_control (X1).
## [,1] [,2] [,3]
## Y1 -0.8804322 0.2449104 -0.2730572
## Y2 -0.9101273 -0.2209695 0.3397966
## Y3 -0.7999910 0.1879332 -0.2835709
## Y4 -0.6941031 0.6758881 0.2376728
## [,1] [,2] [,3]
## X1 -0.91428518 0.3936580 0.09547756
## X2 -0.09996773 0.4213083 -0.90139104
## X3 -0.58532551 -0.6061228 -0.53852502
Hasil angka-angka tersebut merupakan korelasi antara masing-masing variabel asli dengan fungsi kanonik (canonical variate).
V = fungsi kanonik untuk set Y
W = fungsi kanonik untuk set X
Jadi angka-angka itu menunjukkan seberapa kuat variabel X atau Y berkontribusi pada tiap fungsi kanonik (Root 1, Root 2, Root 3). Semakin besar nilai mutlaknya (tanpa memperhatikan tanda positif atau negatif), semakin kuat hubungan linier antara peubah asli dengan variabel kanonik tersebut.
Untuk fungsi kanonik pada peubah Y, terlihat bahwa peubah-peubah yang memiliki hubungan paling kuat dengan fungsi kanonik pertama adalah Y2, diikuti oleh Y1 dan Y3, kemudian Y4. Sementara itu, pada fungsi kanonik kedua, peubah yang berhubungan paling erat adalah Y4, yang menunjukkan bahwa dimensi kanonik kedua pada set Y lebih merepresentasikan variasi yang berasal dari Y4.
Untuk fungsi kanonik pada peubah X, terlihat bahwa peubah dengan hubungan paling kuat terhadap fungsi kanonik pertama adalah X1, kemudian diikuti oleh X3. Hal ini mengindikasikan bahwa fungsi kanonik X pertama terutama dicirikan oleh kontribusi X1. Sedangkan pada fungsi kanonik kedua, peubah yang paling kuat berhubungan adalah X3, diikuti oleh X2, lalu X1.
## [,1] [,2] [,3]
## Y1 -0.3930571 0.03755922 -0.006144737
## Y2 -0.4063141 -0.03388766 0.007646605
## Y3 -0.3571452 0.02882125 -0.006381333
## Y4 -0.3098729 0.10365354 0.005348465
## [,1] [,2] [,3]
## X1 -0.40817026 0.06037101 0.002148577
## X2 -0.04462924 0.06461142 -0.020284434
## X3 -0.26131066 -0.09295440 -0.012118686
Korelasi silang antar peubah-peubah dependen (Y) terhadap fungsi kanonik peubah independen (W) menunjukkan bahwa peubah yang memiliki hubungan paling erat dengan fungsi kanonik pertama adalah Y2. Sementara itu, pada fungsi kanonik kedua, peubah yang memiliki hubungan paling erat adalahg Y4.
Sedangkan korelasi silang antar peubah-peubah independen (X) terhadap fungsi kanonik peubah dependen (V) menunjukkan bahwa peubah yang berhubungan paling erat dengan fungsi kanonik pertama adalah X1. Untuk fungsi kanonik kedua, peubah yang berhubungan paling erat adalah X3.
calc_redundancy <- function(crossload, canonical_corr) {
variance_extracted <- colMeans(crossload^2)
redundancy <- variance_extracted * (canonical_corr^2)
return(list(
variance_extracted = variance_extracted,
redundancy = redundancy
))
}redundansi_Y <- calc_redundancy(cross_Y_W, cc_model$cor)
tabel_redundansi_Y <- data.frame(
Root = 1:length(cc_model$cor),
Variance_Extracted = round(redundansi_Y$variance_extracted, 6),
Redundancy = round(redundansi_Y$redundancy, 6)
)
cat("\n=== Tabel. Redundansi Kanonik untuk Set Y (Prestasi Akademik) ===\n")##
## === Tabel. Redundansi Kanonik untuk Set Y (Prestasi Akademik) ===
## Root Variance_Extracted Redundancy
## 1 1 0.135790 0.027064
## 2 2 0.003533 0.000083
## 3 3 0.000041 0.000000
redundansi_X <- calc_redundancy(cross_X_V, cc_model$cor)
tabel_redundansi_X <- data.frame(
Root = 1:length(cc_model$cor),
Variance_Extracted = round(redundansi_X$variance_extracted, 6),
Redundancy = round(redundansi_X$redundancy, 6)
)
cat("\n=== Tabel. Redundansi Kanonik untuk Set X (Atribut Psikologis) ===\n")##
## === Tabel. Redundansi Kanonik untuk Set X (Atribut Psikologis) ===
## Root Variance_Extracted Redundancy
## 1 1 0.078959 0.015737
## 2 2 0.005487 0.000129
## 3 3 0.000188 0.000000
Interpretasi Redundansi Kanonik untuk Set Y (Prestasi Akademik)
Berdasarkan hasil analisis redundansi, fungsi kanonik pertama mengekstraksi sekitar 13.58% keragaman dari variabel-variabel prestasi akademik (read, write, math, science). Namun, hanya sekitar 2.71% dari keseluruhan keragaman pada prestasi akademik yang dapat dijelaskan oleh variabel psikologis melalui fungsi kanonik pertama.
Dengan kata lain, meskipun fungsi kanonik pertama masih mampu menangkap sebagian variansi dalam variabel akademik, kontribusi set variabel psikologis dalam menjelaskan keragaman tersebut relatif kecil.
Untuk fungsi kanonik kedua dan ketiga, nilai variance extracted maupun indeks redundansi berada sangat dekat dengan nol (<0.01%), menunjukkan bahwa fungsi-fungsi ini tidak memberikan kontribusi informatif dalam menjelaskan keragaman prestasi akademik. Dengan demikian, secara substantif hanya fungsi kanonik pertama yang relevan.
Interpretasi Redundansi Kanonik untuk Set X (Atribut Psikologis)
Berdasarkan hasil analisis, fungsi kanonik pertama mengekstraksi sekitar 7.90% keragaman dari peubah-peubah psikologis (self concept, motivation, locus of control). Namun, hanya sekitar 1.57% dari variasi peubah psikologis yang dapat dijelaskan oleh fungsi kanonik yang dibentuk dari variabel prestasi akademik.
Nilai ini termasuk rendah, menunjukkan bahwa set variabel akademik hanya mampu menjelaskan sebagian kecil keragaman pada atribut psikologis ketika diproyeksikan melalui fungsi kanonik pertama.
Untuk fungsi kanonik kedua dan ketiga, baik nilai variance extracted maupun indeks redundansi berada sangat dekat dengan nol (kurang dari 0.01%). Artinya, fungsi kanonik kedua dan ketiga tidak berkontribusi signifikan dalam menjelaskan keragaman atribut psikologis.
Dengan demikian, secara substantif hanya fungsi kanonik pertama yang relevan, namun kontribusinya tetap cukup rendah.
Analisis korelasi kanonik menunjukkan bahwa terdapat hubungan linier multivariat yang signifikan antara atribut psikologis siswa dan prestasi akademik. Namun, hanya fungsi kanonik pertama yang memiliki nilai informasi substantif, di mana variabel locus of control dan motivation menjadi kontributor utama dari sisi psikologis, sedangkan kemampuan write dan read menjadi kontributor utama dari sisi akademik. Meskipun demikian, indeks redundansi yang rendah menunjukkan bahwa kedua set variabel hanya saling menjelaskan sebagian kecil variansi satu sama lain. Dengan demikian, hubungan psikologis–akademik memang ada, tetapi kontribusinya relatif lemah dan tidak cukup untuk menjelaskan dinamika prestasi akademik secara keseluruhan.