library(readxl)
Data_CCA <- read_excel("C:/Users/HP/OneDrive/文件/Data_AKK.xlsx")
print(Data_CCA)
## # A tibble: 34 × 7
## `Prevalensi balita gizi buruk` Prevalensi balita gizi kur…¹ `Balita Obesitas`
## <dbl> <dbl> <dbl>
## 1 5.9 18.9 3
## 2 5.3 13.1 5.9
## 3 3.3 14.2 3
## 4 4.2 14 5.5
## 5 3 10.5 5
## 6 2.1 10.2 4.2
## 7 2.3 11.9 4.4
## 8 3.5 15 4.2
## 9 3.7 13 7.8
## 10 3 13.4 4.4
## # ℹ 24 more rows
## # ℹ abbreviated name: ¹`Prevalensi balita gizi kurang`
## # ℹ 4 more variables: `Rata-rata lama sekolah ibu` <dbl>,
## # `Persentase Penduduk yang Memiliki Jaminan Kesehatan` <dbl>,
## # Kemiskinan <dbl>, `Imunisasi Dasar Lengkap` <dbl>
Y1 <- Data_CCA$`Prevalensi balita gizi buruk`
Y2 <- Data_CCA$`Prevalensi balita gizi kurang`
Y3 <- Data_CCA$`Balita Obesitas`
X1 <- Data_CCA$`Rata-rata lama sekolah ibu`
X2 <- Data_CCA$`Persentase Penduduk yang Memiliki Jaminan Kesehatan`
X3 <- Data_CCA$Kemiskinan
X4 <- Data_CCA$`Imunisasi Dasar Lengkap`
data <- data.frame(Y1,Y2,Y3,X1,X2,X3,X4)
data
## Y1 Y2 Y3 X1 X2 X3 X4
## 1 5.9 18.9 3.0 8.62 62.85 15.92 23.19
## 2 5.3 13.1 5.9 8.96 25.12 9.28 27.10
## 3 3.3 14.2 3.0 8.60 28.76 6.75 35.59
## 4 4.2 14.0 5.5 8.49 17.63 7.41 31.73
## 5 3.0 10.5 5.0 7.70 18.22 7.90 46.99
## 6 2.1 10.2 4.2 7.67 15.90 13.10 47.40
## 7 2.3 11.9 4.4 8.16 25.79 15.59 43.48
## 8 3.5 15.0 4.2 7.49 26.47 13.04 50.92
## 9 3.7 13.0 7.8 7.48 19.75 5.30 58.33
## 10 3.0 13.4 4.4 9.57 19.40 6.13 57.40
## 11 3.0 11.0 6.8 10.61 36.50 3.78 52.43
## 12 2.9 12.2 3.8 7.69 23.92 7.83 43.01
## 13 3.0 14.0 4.0 6.78 32.95 12.23 63.64
## 14 2.4 10.2 5.5 8.73 40.71 12.36 71.28
## 15 2.9 12.6 5.0 6.78 24.70 11.20 55.51
## 16 4.0 15.7 4.7 7.98 21.35 5.59 25.46
## 17 2.0 6.6 8.1 7.75 23.72 4.14 67.60
## 18 4.3 18.3 3.5 6.27 33.42 15.05 59.73
## 19 7.4 20.9 3.8 6.87 42.25 21.38 57.96
## 20 6.5 19.4 5.2 6.49 19.49 7.86 41.02
## 21 6.0 17.6 5.8 7.91 14.76 5.26 43.16
## 22 4.6 16.4 6.2 7.52 15.51 4.70 61.89
## 23 4.4 14.9 4.7 8.93 17.52 6.08 44.84
## 24 4.5 15.3 5.2 8.44 29.75 6.96 56.13
## 25 3.3 12.0 9.9 9.19 31.38 7.90 54.07
## 26 6.2 19.9 3.1 8.00 34.62 14.22 50.21
## 27 4.9 17.9 3.1 7.63 38.61 9.48 47.68
## 28 6.5 17.3 4.8 7.95 32.76 11.97 59.10
## 29 6.0 17.5 4.5 7.56 58.25 17.14 51.32
## 30 4.9 19.9 2.4 7.08 43.81 11.18 47.65
## 31 5.8 17.9 3.6 9.17 28.03 18.29 32.66
## 32 4.1 13.4 2.1 8.17 19.51 6.44 32.09
## 33 6.6 17.4 5.4 6.90 48.71 23.12 31.06
## 34 6.8 12.8 5.7 5.44 18.97 27.76 19.72
#uji linearitas
library(lmtest)
## Warning: package 'lmtest' was built under R version 4.4.2
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
model1 <- lm(Y1 ~ X1+X2+X3+X4, data = Data_CCA)
model2 <- lm(Y2 ~ X1+X2+X3+X4, data = Data_CCA)
model3 <- lm(Y3 ~ X1+X2+X3+X4, data = Data_CCA)
resettest(model1)
##
## RESET test
##
## data: model1
## RESET = 0.4438, df1 = 2, df2 = 27, p-value = 0.6462
resettest(model2)
##
## RESET test
##
## data: model2
## RESET = 1.2246, df1 = 2, df2 = 27, p-value = 0.3097
resettest(model3)
##
## RESET test
##
## data: model3
## RESET = 1.8632, df1 = 2, df2 = 27, p-value = 0.1746
pairs(Data_CCA,
panel = function(x, y) {
points(x, y, pch = 16, col = "blue")
abline(lm(y ~ x), col = "red")
})

#UJi Normalitas
matriks_data <- as.matrix(data,34,7)
matriks_data
## Y1 Y2 Y3 X1 X2 X3 X4
## [1,] 5.9 18.9 3.0 8.62 62.85 15.92 23.19
## [2,] 5.3 13.1 5.9 8.96 25.12 9.28 27.10
## [3,] 3.3 14.2 3.0 8.60 28.76 6.75 35.59
## [4,] 4.2 14.0 5.5 8.49 17.63 7.41 31.73
## [5,] 3.0 10.5 5.0 7.70 18.22 7.90 46.99
## [6,] 2.1 10.2 4.2 7.67 15.90 13.10 47.40
## [7,] 2.3 11.9 4.4 8.16 25.79 15.59 43.48
## [8,] 3.5 15.0 4.2 7.49 26.47 13.04 50.92
## [9,] 3.7 13.0 7.8 7.48 19.75 5.30 58.33
## [10,] 3.0 13.4 4.4 9.57 19.40 6.13 57.40
## [11,] 3.0 11.0 6.8 10.61 36.50 3.78 52.43
## [12,] 2.9 12.2 3.8 7.69 23.92 7.83 43.01
## [13,] 3.0 14.0 4.0 6.78 32.95 12.23 63.64
## [14,] 2.4 10.2 5.5 8.73 40.71 12.36 71.28
## [15,] 2.9 12.6 5.0 6.78 24.70 11.20 55.51
## [16,] 4.0 15.7 4.7 7.98 21.35 5.59 25.46
## [17,] 2.0 6.6 8.1 7.75 23.72 4.14 67.60
## [18,] 4.3 18.3 3.5 6.27 33.42 15.05 59.73
## [19,] 7.4 20.9 3.8 6.87 42.25 21.38 57.96
## [20,] 6.5 19.4 5.2 6.49 19.49 7.86 41.02
## [21,] 6.0 17.6 5.8 7.91 14.76 5.26 43.16
## [22,] 4.6 16.4 6.2 7.52 15.51 4.70 61.89
## [23,] 4.4 14.9 4.7 8.93 17.52 6.08 44.84
## [24,] 4.5 15.3 5.2 8.44 29.75 6.96 56.13
## [25,] 3.3 12.0 9.9 9.19 31.38 7.90 54.07
## [26,] 6.2 19.9 3.1 8.00 34.62 14.22 50.21
## [27,] 4.9 17.9 3.1 7.63 38.61 9.48 47.68
## [28,] 6.5 17.3 4.8 7.95 32.76 11.97 59.10
## [29,] 6.0 17.5 4.5 7.56 58.25 17.14 51.32
## [30,] 4.9 19.9 2.4 7.08 43.81 11.18 47.65
## [31,] 5.8 17.9 3.6 9.17 28.03 18.29 32.66
## [32,] 4.1 13.4 2.1 8.17 19.51 6.44 32.09
## [33,] 6.6 17.4 5.4 6.90 48.71 23.12 31.06
## [34,] 6.8 12.8 5.7 5.44 18.97 27.76 19.72
x_bar <- colMeans(matriks_data)
x_bar
## Y1 Y2 Y3 X1 X2 X3 X4
## 4.391176 14.861765 4.832353 7.899412 29.149706 10.951176 46.804412
cov_matriks <- cov(matriks_data)
cov_matriks
## Y1 Y2 Y3 X1 X2 X3
## Y1 2.3687077 4.1641979 -0.5266756 -0.49555080 6.1662398 4.574374
## Y2 4.1641979 11.4054635 -2.7544831 -0.93529590 16.9989884 6.591440
## Y3 -0.5266756 -2.7544831 2.6913458 0.29583779 -4.9593841 -2.625676
## X1 -0.4955508 -0.9352959 0.2958378 1.05656328 0.1430604 -2.907599
## X2 6.1662398 16.9989884 -4.9593841 0.14306043 142.8103605 31.962291
## X3 4.5743743 6.5914403 -2.6256756 -2.90759929 31.9622913 33.492786
## X4 -7.6676569 -8.4119171 5.7865499 -0.01339127 4.6124922 -20.415578
## X4
## Y1 -7.66765686
## Y2 -8.41191711
## Y3 5.78654991
## X1 -0.01339127
## X2 4.61249225
## X3 -20.41557807
## X4 174.45103146
Di<-mahalanobis(matriks_data,x_bar,cov_matriks)
Di
## [1] 12.990791 5.845530 3.892427 3.027737 3.040847 5.868997 7.308950
## [8] 2.487868 5.062892 6.093657 8.564975 2.946721 4.420778 8.249485
## [15] 3.158587 7.372383 11.655542 6.636441 8.500046 7.557588 5.649627
## [22] 5.395057 2.887418 1.475609 14.831528 4.117061 2.737186 7.295486
## [29] 7.249193 6.167211 10.886700 9.605710 7.768469 20.251503
hasil <- data.frame(Obs = 1:length(Di),
Mahalanobis_Distance = Di)
hasil<- hasil[order(hasil$Mahalanobis_Distance), ]
hasil$Rank <- c(1:34)
hasil$Probability<-((hasil$Rank-0.5)/34)
hasil
## Obs Mahalanobis_Distance Rank Probability
## 24 24 1.475609 1 0.01470588
## 8 8 2.487868 2 0.04411765
## 27 27 2.737186 3 0.07352941
## 23 23 2.887418 4 0.10294118
## 12 12 2.946721 5 0.13235294
## 4 4 3.027737 6 0.16176471
## 5 5 3.040847 7 0.19117647
## 15 15 3.158587 8 0.22058824
## 3 3 3.892427 9 0.25000000
## 26 26 4.117061 10 0.27941176
## 13 13 4.420778 11 0.30882353
## 9 9 5.062892 12 0.33823529
## 22 22 5.395057 13 0.36764706
## 21 21 5.649627 14 0.39705882
## 2 2 5.845530 15 0.42647059
## 6 6 5.868997 16 0.45588235
## 10 10 6.093657 17 0.48529412
## 30 30 6.167211 18 0.51470588
## 18 18 6.636441 19 0.54411765
## 29 29 7.249193 20 0.57352941
## 28 28 7.295486 21 0.60294118
## 7 7 7.308950 22 0.63235294
## 16 16 7.372383 23 0.66176471
## 20 20 7.557588 24 0.69117647
## 33 33 7.768469 25 0.72058824
## 14 14 8.249485 26 0.75000000
## 19 19 8.500046 27 0.77941176
## 11 11 8.564975 28 0.80882353
## 32 32 9.605710 29 0.83823529
## 31 31 10.886700 30 0.86764706
## 17 17 11.655542 31 0.89705882
## 1 1 12.990791 32 0.92647059
## 25 25 14.831528 33 0.95588235
## 34 34 20.251503 34 0.98529412
hasil$X2<-qchisq(hasil$Probability,7)
hasil$X2
## [1] 1.408996 2.069694 2.508302 2.866641 3.182242 3.471496 3.743303
## [8] 4.003174 4.254852 4.501072 4.743954 4.985239 5.226426 5.468871
## [15] 5.713857 5.962647 6.216533 6.476886 6.745206 7.023178 7.312749
## [22] 7.616225 7.936403 8.276758 8.641729 9.037148 9.470941 9.954328
## [29] 10.504009 11.146554 11.928311 12.942194 14.425054 17.451466
plot(hasil$Mahalanobis_Distance,hasil$X2,
xlab= "Mahalanobis Distance",ylab="Chi-Square",,col="red",
main = "QQ plot Normalitas",
pch=19, cex=0.8)
abline(a=0,b=1,col="blue",lwd=2)

x_bar <- colMeans(matriks_data)
x_bar
## Y1 Y2 Y3 X1 X2 X3 X4
## 4.391176 14.861765 4.832353 7.899412 29.149706 10.951176 46.804412
#Menentukan multikolineritas
VIF <- function(x){
VIF <- diag(solve(cor(x)))
result <- ifelse(VIF > 10,"multicolinearity","non
multicolinearity")
data1 <- data.frame(VIF,result)
return(data1)
}
VIF(data)
## VIF result
## Y1 5.834572 non\n multicolinearity
## Y2 5.964952 non\n multicolinearity
## Y3 2.087563 non\n multicolinearity
## X1 1.685260 non\n multicolinearity
## X2 1.854255 non\n multicolinearity
## X3 2.662379 non\n multicolinearity
## X4 1.598411 non\n multicolinearity
#Menghitung covarian matriks
cov_matriks<-cov(matriks_data)
cov_matriks
## Y1 Y2 Y3 X1 X2 X3
## Y1 2.3687077 4.1641979 -0.5266756 -0.49555080 6.1662398 4.574374
## Y2 4.1641979 11.4054635 -2.7544831 -0.93529590 16.9989884 6.591440
## Y3 -0.5266756 -2.7544831 2.6913458 0.29583779 -4.9593841 -2.625676
## X1 -0.4955508 -0.9352959 0.2958378 1.05656328 0.1430604 -2.907599
## X2 6.1662398 16.9989884 -4.9593841 0.14306043 142.8103605 31.962291
## X3 4.5743743 6.5914403 -2.6256756 -2.90759929 31.9622913 33.492786
## X4 -7.6676569 -8.4119171 5.7865499 -0.01339127 4.6124922 -20.415578
## X4
## Y1 -7.66765686
## Y2 -8.41191711
## Y3 5.78654991
## X1 -0.01339127
## X2 4.61249225
## X3 -20.41557807
## X4 174.45103146
P11 <- cov_matriks [1:3,1:3]
P11
## Y1 Y2 Y3
## Y1 2.3687077 4.164198 -0.5266756
## Y2 4.1641979 11.405463 -2.7544831
## Y3 -0.5266756 -2.754483 2.6913458
P12 <- cov_matriks [1:3,4:7]
P12
## X1 X2 X3 X4
## Y1 -0.4955508 6.166240 4.574374 -7.667657
## Y2 -0.9352959 16.998988 6.591440 -8.411917
## Y3 0.2958378 -4.959384 -2.625676 5.786550
P21 <- cov_matriks [4:7,1:3]
P21
## Y1 Y2 Y3
## X1 -0.4955508 -0.9352959 0.2958378
## X2 6.1662398 16.9989884 -4.9593841
## X3 4.5743743 6.5914403 -2.6256756
## X4 -7.6676569 -8.4119171 5.7865499
P22<-cov_matriks[4:7,4:7]
P22
## X1 X2 X3 X4
## X1 1.05656328 0.1430604 -2.907599 -0.01339127
## X2 0.14306043 142.8103605 31.962291 4.61249225
## X3 -2.90759929 31.9622913 33.492786 -20.41557807
## X4 -0.01339127 4.6124922 -20.415578 174.45103146
#Mencari invers dari matriks akar kuadrat dari ∑_11^(-1/2) dan ∑_22^(-1/2)
eig.P11<-eigen(P11)
nilai.eigen.P11<-eig.P11$values
nilai.eigen.P11
## [1] 13.7222108 2.1738365 0.5694696
l1.11<-nilai.eigen.P11[1]
l2.11<-nilai.eigen.P11[2]
l3.11<-nilai.eigen.P11[3]
vektor.eigen.P11<-eig.P11$vectors
vektor.eigen.P11
## [,1] [,2] [,3]
## [1,] -0.3439442 0.38942118 0.8544317
## [2,] -0.9070259 0.09761324 -0.4096043
## [3,] 0.2429124 0.91587270 -0.3196416
v1.11<-matrix(vektor.eigen.P11[,1])
v1.11
## [,1]
## [1,] -0.3439442
## [2,] -0.9070259
## [3,] 0.2429124
v2.11<-matrix(vektor.eigen.P11[,2])
v2.11
## [,1]
## [1,] 0.38942118
## [2,] 0.09761324
## [3,] 0.91587270
v3.11<-matrix(vektor.eigen.P11[,3])
v3.11
## [,1]
## [1,] 0.8544317
## [2,] -0.4096043
## [3,] -0.3196416
sig11<-((v1.11%*%t(v1.11))/sqrt(l1.11))+
((v2.11%*%t(v2.11))/sqrt(l2.11))+
((v3.11%*%t(v3.11))/sqrt(l3.11))
sig11
## [,1] [,2] [,3]
## [1,] 1.1022196 -0.3537762 -0.1425651
## [2,] -0.3537762 0.4508795 0.1746551
## [3,] -0.1425651 0.1746551 0.7202477
eig.P22<-eigen(P22)
nilai.eigen.P22<-eig.P22$values
nilai.eigen.P22
## [1] 177.3494426 151.4423387 22.3392772 0.6796832
l1.22<-nilai.eigen.P22[1]
l2.22<-nilai.eigen.P22[2]
l3.22<-nilai.eigen.P22[3]
l4.22<-nilai.eigen.P22[4]
vektor.eigen.P22<-eig.P22$vectors
vektor.eigen.P22
## [,1] [,2] [,3] [,4]
## [1,] 0.002235341 -0.004035081 -0.1313242 0.99132874
## [2,] 0.002720713 0.966064976 -0.2565300 -0.03005717
## [3,] -0.139959077 0.256079021 0.9480086 0.12694343
## [4,] 0.990151028 0.033551667 0.1350036 0.01578820
v1.22<-matrix(vektor.eigen.P22[,1])
v1.22
## [,1]
## [1,] 0.002235341
## [2,] 0.002720713
## [3,] -0.139959077
## [4,] 0.990151028
v2.22<-matrix(vektor.eigen.P22[,2])
v2.22
## [,1]
## [1,] -0.004035081
## [2,] 0.966064976
## [3,] 0.256079021
## [4,] 0.033551667
v3.22<-matrix(vektor.eigen.P22[,3])
v3.22
## [,1]
## [1,] -0.1313242
## [2,] -0.2565300
## [3,] 0.9480086
## [4,] 0.1350036
v4.22<-matrix(vektor.eigen.P22[,4])
v4.22
## [,1]
## [1,] 0.99132874
## [2,] -0.03005717
## [3,] 0.12694343
## [4,] 0.01578820
sig22<-((v1.22%*%t(v1.22))/sqrt(l1.22))+
((v2.22%*%t(v2.22))/sqrt(l2.22))+
((v3.22%*%t(v3.22))/sqrt(l3.22))
sig22
## [,1] [,2] [,3] [,4]
## [1,] 0.003650542 0.006811378 -0.02644788 -0.003595875
## [2,] 0.006811378 0.089762215 -0.03137940 -0.004491208
## [3,] -0.026447876 -0.031379396 0.19694689 0.017370481
## [4,] -0.003595875 -0.004491208 0.01737048 0.077566313
#mencari nilai eigen dan vektor eigen a untuk sigma 11
M.sig.11<-sig11%*%P12%*%solve(P22)%*%P21%*%sig11
M.sig.11
## [,1] [,2] [,3]
## [1,] 0.41082028 0.04721389 -0.20524928
## [2,] 0.04721389 0.22061372 -0.06430798
## [3,] -0.20524928 -0.06430798 0.11805659
eigen11<-eigen(M.sig.11)
nilai.eigenM11<-eigen11$values
nilai.eigenM11
## [1] 0.532996117 0.210338258 0.006156206
l1.M11<-nilai.eigenM11[1]
l1.M11
## [1] 0.5329961
l2.M11<-nilai.eigenM11[2]
l2.M11
## [1] 0.2103383
l3.M11<-nilai.eigenM11[3]
l3.M11
## [1] 0.006156206
vektor.eigen.M11<-eigen11$vectors
vektor.eigen.M11
## [,1] [,2] [,3]
## [1,] 0.8591801 -0.27778725 0.4297019
## [2,] 0.2245108 0.95930568 0.1712527
## [3,] -0.4597873 -0.05066421 0.8865826
e1<-matrix(vektor.eigen.M11[,1])
e1
## [,1]
## [1,] 0.8591801
## [2,] 0.2245108
## [3,] -0.4597873
e2<-matrix(vektor.eigen.M11[,2])
e2
## [,1]
## [1,] -0.27778725
## [2,] 0.95930568
## [3,] -0.05066421
e3<-matrix(vektor.eigen.M11[,3])
e3
## [,1]
## [1,] 0.4297019
## [2,] 0.1712527
## [3,] 0.8865826
#mencari nilai eigen dan vektor eigen a untuk sigma 22
M.sig.22<-sig22%*%P21%*%solve(P11)%*%P12%*%sig22
M.sig.22
## [,1] [,2] [,3] [,4]
## [1,] 0.002707833 -0.00176554 -0.02474566 0.02558113
## [2,] -0.001765540 0.16364350 0.06011423 -0.06094522
## [3,] -0.024745665 0.06011423 0.23830615 -0.24787171
## [4,] 0.025581131 -0.06094522 -0.24787171 0.27074238
eigen22<-eigen(M.sig.22)
nilai.eigenM22<-eigen22$values
nilai.eigenM22
## [1] 5.256357e-01 1.436091e-01 6.155068e-03 -4.418097e-18
l1.M22<-nilai.eigenM22[1]
l1.M22
## [1] 0.5256357
l2.M22<-nilai.eigenM22[2]
l2.M22
## [1] 0.1436091
l3.M22<-nilai.eigenM22[3]
l3.M22
## [1] 0.006155068
l4.M22<-nilai.eigenM22[4]
l4.M22
## [1] -4.418097e-18
vektor.eigen.M22<-eigen22$vectors
vektor.eigen.M22
## [,1] [,2] [,3] [,4]
## [1,] 0.06685137 0.04512856 -0.10373834 0.99132874
## [2,] -0.22986035 0.97268266 -0.01221581 -0.03005717
## [3,] -0.66452352 -0.14404495 0.72218066 0.12694343
## [4,] 0.70788672 0.17636016 0.68377205 0.01578820
v1.M22<-matrix(vektor.eigen.M22[,1])
v1.M22
## [,1]
## [1,] 0.06685137
## [2,] -0.22986035
## [3,] -0.66452352
## [4,] 0.70788672
v2.M22<-matrix(vektor.eigen.M22[,2])
v2.M22
## [,1]
## [1,] 0.04512856
## [2,] 0.97268266
## [3,] -0.14404495
## [4,] 0.17636016
v3.M22<-matrix(vektor.eigen.M22[,3])
v3.M22
## [,1]
## [1,] -0.10373834
## [2,] -0.01221581
## [3,] 0.72218066
## [4,] 0.68377205
v4.M22<-matrix(vektor.eigen.M22[,4])
v4.M22
## [,1]
## [1,] 0.99132874
## [2,] -0.03005717
## [3,] 0.12694343
## [4,] 0.01578820
#mencari nilai koefisien a dan b
a1<-sig11%*%e1
a1
## [,1]
## [1,] 0.9331282
## [2,] -0.2830343
## [3,] -0.4144379
a2<-sig11%*%e2
a2
## [,1]
## [1,] -0.6383391
## [2,] 0.5219570
## [3,] 0.1706596
a3<-sig11%*%e3
a3
## [,1]
## [1,] 0.2866450
## [2,] 0.0800422
## [3,] 0.6072088
b1<-sig22%*%v1.M22
b1
## [,1]
## [1,] 0.013708141
## [2,] -0.002504344
## [3,] -0.113134704
## [4,] 0.044157031
b2<-sig22%*%v2.M22
b2
## [,1]
## [1,] 0.009965567
## [2,] 0.091345511
## [3,] -0.057021493
## [4,] 0.006646680
b3<-sig22%*%v3.M22
b3
## [,1]
## [1,] -0.02202081
## [2,] -0.02753568
## [3,] 0.15723567
## [4,] 0.06601020
b4<-sig22%*%v4.M22
b4
## [,1]
## [1,] -2.074214e-17
## [2,] -3.496552e-17
## [3,] 1.489152e-16
## [4,] 5.854692e-17
U1V1<-(t(a1)%*%P12%*%b1)/((sqrt(t(a1)%*%P11%*%a1))*(sqrt(t(b1)%*%P22%*%b1)))
U1V1
## [,1]
## [1,] -0.7235615
U2V2<-(t(a2)%*%P12%*%b2)/((sqrt(t(a2)%*%P11%*%a2))*(sqrt(t(b2)%*%P22%*%b2)))
U2V2
## [,1]
## [1,] 0.3782016
U3V3<-(t(a3)%*%P12%*%b3)/((sqrt(t(a3)%*%P11%*%a3))*(sqrt(t(b3)%*%P22%*%b3)))
U3V3
## [,1]
## [1,] 0.07845413
an<-(t(a1)%*%P11%*%a1)
an
## [,1]
## [1,] 1
X<-data.frame(X1,X2,X3,X4)
Y<-data.frame(Y1,Y2,Y3)
X_scaled <- scale(X)
Y_scaled <- scale(Y)
result <- cancor(X_scaled, Y_scaled)
result
## $cor
## [1] 0.73006583 0.45862649 0.07846149
##
## $xcoef
## [,1] [,2] [,3] [,4]
## X1 0.03014811 0.118080209 0.001545226 -0.17737804
## X2 -0.02118205 -0.198426721 0.056597037 -0.04631329
## X3 -0.09104906 0.145160090 -0.159788623 -0.10272361
## X4 0.10580931 0.001825117 -0.152244613 -0.03372254
##
## $ycoef
## [,1] [,2] [,3]
## Y1 -0.2500000 0.17102130 -0.07679681
## Y2 0.1663943 -0.30685573 -0.04705638
## Y3 0.1183552 -0.04873696 -0.17340668
##
## $xcenter
## X1 X2 X3 X4
## 2.857192e-17 1.016344e-16 6.326639e-18 -3.892924e-17
##
## $ycenter
## Y1 Y2 Y3
## -2.588565e-16 1.556149e-17 2.128608e-16
#MENGHITUNG ANALISIS KORELASI KANONIK LANGSUNG
cor_XY<-cancor(X,Y)
cor_XY
## $cor
## [1] 0.73006583 0.45862649 0.07846149
##
## $xcoef
## [,1] [,2] [,3] [,4]
## X1 0.029330021 0.1148760141 0.001503295 -0.172564749
## X2 -0.001772508 -0.0166042895 0.004736023 -0.003875483
## X3 -0.015732575 0.0250825443 -0.027610242 -0.017749847
## X4 0.008011007 0.0001381828 -0.011526705 -0.002553192
##
## $ycoef
## [,1] [,2] [,3]
## Y1 -0.16243678 0.11112057 -0.04989849
## Y2 0.04926995 -0.09086105 -0.01393356
## Y3 0.07214438 -0.02970802 -0.10570148
##
## $xcenter
## X1 X2 X3 X4
## 7.899412 29.149706 10.951176 46.804412
##
## $ycenter
## Y1 Y2 Y3
## 4.391176 14.861765 4.832353
#uji korelasi kanonik secara simultan Keseluruhan
n <- 34
p <- 3
q <- 4
rho <- c(-U1V1, U2V2, U3V3)
Simult <- n - 1 - (1/2) * (p + q + 1)
product_rho <- prod(1 - rho^2)
B <- -Simult * log(product_rho)
df <- p * q
chi_critical <- qchisq(0.95, df)
cat("Nilai B:", B, "\n")
## Nilai B: 26.15534
cat("Nilai Chi-Square tabel:", chi_critical, "\n")
## Nilai Chi-Square tabel: 21.02607
# Keputusan uji hipotesis
if (B > chi_critical) {
cat("Terima H0,semua korelasi kanonik bernilai nol.\n")
} else {
cat("Belum cukup bukti untuk menerima Ho, paling tidak ada satu korelasi kanonik yang bernilai nol.\n")
}
## Terima H0,semua korelasi kanonik bernilai nol.
#uji korelasi kanonik secara simultan individu
n <- 34
p <- 3
q <- 4
#B1
rho <- c(-U1V1, U2V2, U3V3)
Simult <- n - 1 - (1/2) * (p + q + 1)
product_rho <- prod(1 - rho^2)
B1 <- -Simult * log(product_rho)
df <- (p-1+1)*(q-1+1)
chi_critical <- qchisq(0.95, df)
cat("Nilai B1:", B1, "\n")
## Nilai B1: 26.15534
cat("Nilai Chi-Square tabel:", chi_critical, "\n")
## Nilai Chi-Square tabel: 21.02607
#B2
rho <- c(-U2V2, U3V3)
Simult <- n - 1 - (1/2) * (p + q + 1)
product_rho <- prod(1 - rho^2)
B2 <- -Simult * log(product_rho)
df <- (p-2+1)*(q-2+1)
chi_critical <- qchisq(0.95, df)
cat("Nilai B2:", B2, "\n")
## Nilai B2: 4.655485
cat("Nilai Chi-Square tabel:", chi_critical, "\n")
## Nilai Chi-Square tabel: 12.59159
#B3
rho <- (-U3V3)
Simult <- n - 1 - (1/2) * (p + q + 1)
product_rho <- prod(1 - rho^2)
B3 <- -Simult * log(product_rho)
df <- (p-3+1)*(q-3+1)
chi_critical <- qchisq(0.95, df)
cat("Nilai B3:", B3, "\n")
## Nilai B3: 0.1790481
cat("Nilai Chi-Square tabel:", chi_critical, "\n")
## Nilai Chi-Square tabel: 5.991465