#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
##   tablet pelarut  data
## 1      1       1 46.18
## 2      2       1 57.69
## 3      3       1 48.61
## 4      1       2 54.54
## 5      2       2 71.57
## 6      3       2 51.01
## 7      1       3 56.63
## 8      2       3 81.51
## 9      3       3 80.02
#Pendefinisian Variabel (Sudah dirapikan dari enter yang terselip)
data$tablet=factor(data$tablet,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
##      tablet    pelarut  data
## 1       CDR  Air Biasa 46.18
## 2   Redoxon  Air Biasa 57.69
## 3 Enervon-C  Air Biasa 48.61
## 4       CDR   Air Soda 54.54
## 5   Redoxon   Air Soda 71.57
## 6 Enervon-C   Air Soda 51.01
## 7       CDR Air kelapa 56.63
## 8   Redoxon Air kelapa 81.51
## 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 tablet
for(i in levels(data$tablet)){
  cat("\nUji Normalitas untuk tablet:", i, "\n")
  print(shapiro.test(data$data[data$tablet==i]))
}
## 
## Uji Normalitas untuk tablet: CDR 
## 
##  Shapiro-Wilk normality test
## 
## data:  data$data[data$tablet == i]
## W = 0.89286, p-value = 0.3631
## 
## 
## Uji Normalitas untuk tablet: Redoxon 
## 
##  Shapiro-Wilk normality test
## 
## data:  data$data[data$tablet == i]
## W = 0.99096, p-value = 0.8182
## 
## 
## Uji Normalitas untuk tablet: Enervon-C 
## 
##  Shapiro-Wilk normality test
## 
## data:  data$data[data$tablet == 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~tablet, 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
# (levene test pelarut*tablet dihapus karena tanpa interaksi)

#Uji ANOVA TANPA INTERAKSI#
anava2arah_tanpa <- function(y, A, B){
  a <- nlevels(A); b <- nlevels(B)
  N <- length(y); n <- N/(a*b)
  
  FK <- sum(y)^2/N
  JKT <- sum(y^2) - FK
  JK_A <- sum(tapply(y, A, sum)^2)/(b*n) - FK
  JK_B <- sum(tapply(y, B, sum)^2)/(a*n) - FK
  
  # Untuk tanpa interaksi, interaksi dilebur ke dalam Galat
  JKG <- JKT - JK_A - JK_B 
  
  db <- c(a-1, b-1, N-a-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("A","B","Galat","Total"), db, JK, KT, F, p)
}
anava2arah_tanpa(data$tablet, data$pelarut, y=data$data)
##   Sumber db        JK        KT        F          p
## 1      A  2  479.9575 239.97874 4.269572 0.10176166
## 2      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