library(car)
## Warning: package 'car' was built under R version 4.5.3
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.5.3
#Memanggil Data
data=read.table(file.choose(),header=TRUE)
data
## Merek Pelarut Data
## 1 1 1 46.18
## 2 1 2 54.54
## 3 1 3 56.63
## 4 2 1 57.69
## 5 2 2 71.57
## 6 2 3 81.51
## 7 3 1 48.61
## 8 3 2 51.01
## 9 3 3 80.02
#Pendefinisian Variabel
data$Merek=factor(data$Merek,levels=1:3,labels=c("CDR","Redoxon","Enervon-C"))
data$Pelarut=factor(data$Pelarut,levels=1:3,labels=c("Air Biasa","Air Soda","Air Kelapa"))
data
## Merek Pelarut Data
## 1 CDR Air Biasa 46.18
## 2 CDR Air Soda 54.54
## 3 CDR Air Kelapa 56.63
## 4 Redoxon Air Biasa 57.69
## 5 Redoxon Air Soda 71.57
## 6 Redoxon Air Kelapa 81.51
## 7 Enervon-C Air Biasa 48.61
## 8 Enervon-C Air Soda 51.01
## 9 Enervon-C Air Kelapa 80.02
#Normalitas per Merek
for(i in levels(data$Merek)){
cat("\nUji Normalitas untuk Merek:", i, "\n")
print(shapiro.test(data$Data[data$Merek==i]))
}
##
## Uji Normalitas untuk Merek: CDR
##
## Shapiro-Wilk normality test
##
## data: data$Data[data$Merek == i]
## W = 0.89286, p-value = 0.3631
##
##
## Uji Normalitas untuk Merek: Redoxon
##
## Shapiro-Wilk normality test
##
## data: data$Data[data$Merek == i]
## W = 0.99096, p-value = 0.8182
##
##
## Uji Normalitas untuk Merek: Enervon-C
##
## Shapiro-Wilk normality test
##
## data: data$Data[data$Merek == i]
## W = 0.80695, p-value = 0.1312
#Normalitas per Pelarut
for(j in levels(data$Pelarut)){
cat("\nUji Normalitas untuk Pelarut:", j, "\n")
print(shapiro.test(data$Data[data$Pelarut==j]))
}
##
## Uji Normalitas untuk Pelarut: Air Biasa
##
## Shapiro-Wilk normality test
##
## data: data$Data[data$Pelarut == j]
## W = 0.89987, p-value = 0.3851
##
##
## Uji Normalitas untuk Pelarut: Air Soda
##
## Shapiro-Wilk normality test
##
## data: data$Data[data$Pelarut == j]
## W = 0.87434, p-value = 0.3079
##
##
## Uji Normalitas untuk Pelarut: Air Kelapa
##
## Shapiro-Wilk normality test
##
## data: data$Data[data$Pelarut == j]
## W = 0.79474, p-value = 0.102
#Homogenitas variansi
leveneTest(Data~Merek, center=mean, data=data)
## Levene's Test for Homogeneity of Variance (center = mean)
## Df F value Pr(>F)
## group 2 2.4902 0.1632
## 6
leveneTest(Data~Pelarut, center=mean, data=data)
## Levene's Test for Homogeneity of Variance (center = mean)
## Df F value Pr(>F)
## group 2 1.9806 0.2185
## 6
#Data dalam bentuk matriks (baris = Merek, kolom = Pelarut)
Y <- tapply(data$Data, list(Faktor_Baris=data$Merek, Faktor_Kolom=data$Pelarut), sum)
Y
## Faktor_Kolom
## Faktor_Baris Air Biasa Air Soda Air Kelapa
## CDR 46.18 54.54 56.63
## Redoxon 57.69 71.57 81.51
## Enervon-C 48.61 51.01 80.02
#ANAVA 2 ARAH TANPA INTERAKSI
anava2arah_tanpa <- function(Y, alpha=0.05){
a <- nrow(Y)
b <- ncol(Y)
N <- a*b
FK <- sum(Y)^2/N
JKT <- sum(Y^2) - FK
JK_A <- sum(rowSums(Y)^2)/b - FK
JK_B <- sum(colSums(Y)^2)/a - FK
JKG <- JKT - JK_A - JK_B
db <- c(a-1, b-1, (a-1)*(b-1), N-1)
JK <- c(JK_A, JK_B, JKG, JKT)
KT <- JK/db
F <- c(KT[1:2]/KT[3], NA, NA)
Ft <- c(qf(1-alpha, db[1:2], db[3]), NA, NA)
p <- c(pf(F[1:2], db[1:2], db[3], lower.tail=FALSE), NA, NA)
hasil <- data.frame(Sumber=c("Faktor Baris (Merek)","Faktor Kolom (Pelarut)","Galat","Total"),
db, JK, KT, F_hit=F, F_tabel=Ft, p_value=p)
print(hasil, digits=5, na.print="", row.names=FALSE)
}
anava2arah_tanpa(Y)
## Sumber db JK KT F_hit F_tabel p_value
## Faktor Baris (Merek) 2 479.96 239.979 4.2696 6.9443 0.101762
## Faktor Kolom (Pelarut) 2 733.92 366.960 6.5287 6.9443 0.054991
## Galat 4 224.83 56.207 NA NA NA
## Total 8 1438.70 179.838 NA NA NA
#Membandingkan dengan fungsi aov
anova(aov(Data ~ Merek + Pelarut, data=data))
## Analysis of Variance Table
##
## Response: Data
## Df Sum Sq Mean Sq F value Pr(>F)
## Merek 2 479.96 239.98 4.2696 0.10176
## Pelarut 2 733.92 366.96 6.5287 0.05499 .
## Residuals 4 224.83 56.21
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1