-
Notifications
You must be signed in to change notification settings - Fork 0
/
5_Analisis_Diskiriminan_k_Kelompok.R
60 lines (49 loc) · 1.36 KB
/
5_Analisis_Diskiriminan_k_Kelompok.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
##### ANALISIS DISKRIMINAN K KELOMPOK #####
#===== Input Data
data("iris")
library(DT)
datatable(iris)
head(iris)
str(iris)
#===== Variabel Independen dan Dependen
x=iris[,c(1:4)]
head(x)
y=iris[,5]
head(y)
n=nrow(iris);n
#===== Uji Asumsi Analisis Diskriminan
#== Uji Normalitas Multivariat
# uji normalitas variabel bebas X
library(MVN)
mvn(data=x, mvnTest="mardia")
# atau
mvn(data=x, multivariatePlot='qq')
#== Uji Homogenitas Varians
library(biotools)
boxM(data=x, grouping=y)
#== Uji Multikolinieritas
diag(solve(cor(x)))
#===== Membagi Data Training dan Testing
# 75% sebagai train data dan 25% sebagai test data
set.seed(123)
train_index <- sample(seq(nrow(iris)), size = floor(0.75 * nrow(iris)), replace = F)
training_data <- iris[train_index, ]
head(training_data)
test_data <- iris[-train_index, ]
head(test_data)
#===== Membentuk Fungsi Diskriminan
library(MASS)
(iris.lda <- lda(Species ~., data = training_data))
iris.lda$count
#===== Membentuk Plot antara Fungsi Diskriminan
## Enable the r-universe repo
#options(repos = c(
# fawda123 = 'https://fawda123.r-universe.dev',
# CRAN = 'https://cloud.r-project.org'))
# Install ggord
# install.packages('ggord')
library(ggord)
ggord(iris.lda, training_data$Species)
#===== Menguji Performa Model
predicted <- predict(object = iris.lda, newdata = test_data)
table(actual = test_data$Species, predicted = predicted$class)