#PACKAGES
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
library(agricolae)
## Warning: package 'agricolae' was built under R version 4.5.3
#Memanggil Data
data=read.table(file.choose(), header=T)
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 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
# 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
#Homogenitas variansi#
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
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
#Uji ANOVA
anava2arah_tanpa_interaksi <- function(y, A, B){
a <- nlevels(A); b <- nlevels(B)
N <- length(y)
FK <- sum(y)^2 / N
JKT <- sum(y^2) - FK
JK_A <- sum(tapply(y, A, sum)^2) / b - FK
JK_B <- sum(tapply(y, B, sum)^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)
p <- c(pf(F[1:2], db[1:2], db[3], lower.tail = FALSE), NA, NA)
data.frame(Sumber = c("Merek (A)", "Pelarut (B)", "Galat", "Total"), db, JK, KT, F, p)
}
# Memanggil fungsi manual (pastikan urutan argumen sesuai: y, A, B)
anava2arah_tanpa_interaksi(y = data$Data, A = data$merek, B = data$pelarut)
## Sumber db JK KT F p
## 1 Merek (A) 2 479.9575 239.97874 4.269572 0.10176166
## 2 Pelarut (B) 2 733.9193 366.95964 6.528748 0.05499073
## 3 Galat 4 224.8270 56.20674 NA NA
## 4 Total 8 1438.7038 179.83797 NA NA
# Menggunakan fungsi bawaan R (tanda + untuk tanpa interaksi)
uji_anava <- aov(Data ~ merek + pelarut, data = data)
anova(uji_anava)
## 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