No3 Uas
No3 Uas
No3 Uas
Rianti Isnania
2022-12-15
library(readxl)
data = read_excel("D:/KULIAH/SEMESTER 5/APG/UAS/A_R STUDIO
BISMILLAH/data_diskriminan.xlsx")
View(data)
library(MASS)
fit = lda(Merk~efisiensi+detik+kilo,data=data)
fit
## Call:
## lda(Merk ~ efisiensi + detik + kilo, data = data)
##
## Prior probabilities of groups:
## 1 2
## 0.5294118 0.4705882
##
## Group means:
## efisiensi detik kilo
## 1 15.11111 9.388889 850.3333
## 2 14.62500 10.875000 817.4375
##
## Coefficients of linear discriminants:
## LD1
## efisiensi -0.568427144
## detik 0.719818449
## kilo 0.008766566
Prior probabilities of groups: 1 2 0.5 0.5 prior prob adalah pel 1 obs untuk masuk dalam
suatu kelompok sblm data terkumpul
Coefficients of linear discriminants: LD1 y1 -0.13987912 y2 -0.42340040 y3 0.04247445
y4 -0.02878734 y5 -0.39508971 y6 -0.16819799
fungsi diskriminan z = -0.14 y1 - 0.423 y2 + 0.04 y3 - 0.03 y4 - 0.395 y5 - 0.168 y6
#UJI ASUMSI MULTIVARIATE NORMAL #uji multivariate normal
library(MVN)
result <- mvn(data =data[2:4],mvnTest = "mardia")
result
## $multivariateNormality
## Test Statistic p value Result
## 1 Mardia Skewness 14.0411066594509 0.171124850424771 YES
## 2 Mardia Kurtosis -0.726011433817873 0.467831761224173 YES
## 3 MVN <NA> <NA> YES
##
## $univariateNormality
## Test Variable Statistic p value Normality
## 1 Anderson-Darling efisiensi 0.5963 0.1124 YES
## 2 Anderson-Darling detik 1.0119 0.0100 NO
## 3 Anderson-Darling kilo 1.1592 0.0043 NO
##
## $Descriptives
## n Mean Std.Dev Median Min Max 25th 75th
Skew
## efisiensi 34 14.88235 1.647122 15.0 12.0 19.0 14.0 16.00
0.3399752
## detik 34 10.08824 2.108678 11.0 5.0 13.0 9.0 11.75 -
0.7147725
## kilo 34 834.85294 165.203119 787.3 639.6 1190.8 701.1 965.15
0.6832758
## Kurtosis
## efisiensi -0.3672187
## detik -0.3869701
## kilo -0.8406343
Dari grafik Chi-Square QQ Plot diatas, dapat dilihat bahwasanya secara umum terbentuk
garis linear X = Y, maka dapat dikatakan bahwa data berdistribusi multivariate normal.
#matriks ragam peragam antar kategori sama
library(biotools)
## ---
## biotools version 4.2
##
## Box's M-test for Homogeneity of Covariance Matrices
##
## data: data[, c(2:4)]
## Chi-Sq (approx.) = 8.2156, df = 6, p-value = 0.2227
Output diatas menunjukkan bahwa dengan tingkat signifikansi 5%, didapat keputusan
untuk gagal tolak hipotesis nol sehingga tidak terdapat perbedaan matriks ragam
peragamnya dan dapat digunakan model diskriminan linear
Terdapat perbedaan rata-rata antar kategori H0 : Tidak terdapat perbedaan rata-rata skor
diskriminan antar kelompok secara multivariat H1 : terdapat perbedaan rata-rata skor
diskriminan antar kelompok secara multivariat
(wilk <- manova(formula = cbind(data$efisiensi, data$detik,
data$kilo)~data$Merk))
## Call:
## manova(formula = cbind(data$efisiensi, data$detik, data$kilo) ~
## data$Merk)
##
## Terms:
## data$Merk Residuals
## resp 1 2.0 87.5
## resp 2 18.7 128.0
## resp 3 9166.3 891472.0
## Deg. of Freedom 1 32
##
## Residual standard errors: 1.653857 2.000217 166.9087
## Estimated effects may be unbalanced
otput diatas menunjukkan bahwa dengan tingkat signifikansi 5%, didapat keputusan untuk
menolak hipotesis nol atau dengan kata lain terdapat perbedaan rata-rata (nilai variabel
prediktor) antar kategori
#Correlation dan multikolinearity check
kor<-cor(data[,2:4])
kor
##
## Attaching package: 'candisc'
##
## Canonical Discriminant Analysis for data$Merk:
##
## CanRsq Eigenvalue Difference Percent Cumulative
## 1 0.22846 0.29611 100 100
##
## Test of H0: The canonical correlations in the
## current row and all that follow are zero
##
## LR test stat approx F numDF denDF Pr(> F)
## 1 0.77154 2.9611 3 30 0.04799 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Attaching package: 'dplyr'
s1=cov(m1)
s2= cov(m2)
Spooled<-function(s1,s2,n1,n2){
W1<-(n1-1)*s1
W2<-(n2-1)*s2
Sp<-(1/((n1-1)+(n2-1)))*(W1+W2)
return(Sp)
}
Spl<-Spooled(s1,s2,18,16)
Spl
xbar1 = matrix(c(15.118,9.647,842.188))
xbar2 = matrix(c(14.647,10.529,827.518))
a=t(xbar1-xbar2)%*%solve(Spl)
xbar.1 = a%*%xbar1
xbar.2 = a%*%xbar2
#cutting score
m.kep = 0.5*(xbar.1+xbar.2)
m.kep
## [,1]
## [1,] -3.581862
##
## 1 2
## 1 11 7
## 2 4 12
1 2
150205
5 observasi dengan kelompok asal 1 diklasifikasikan benar ke kelompok 1
5 observasi dengan kelompok asal 1 diklasifikasikan benar ke kelompok 1
0 observasi dengan kelompok asal 1 salah diklasifikasikan ke kelompok 2
0 observasi dengan kelompok asal 2 salah diklasifikasikan ke kelompok 1
#membuat confussion matrix untuk melihat akurasi prediksi klasifikasi
diag(prop.table(ct,1))
## 1 2
## 0.6111111 0.7500000
Interpretasi : 1 2 1 1
100 persen kelompok 1 diklasifikasikan dengan benar. 100 persen kel 2 diklasifikasikan
dengan benar.
#total persen correct
sum(diag(prop.table(ct)))
## [1] 0.6764706