#Rancangan Acak Kelompok Faktorial RAKL#

df <- read.csv("C:/Users/ma.rohim.EWSI/Downloads/Prak9.csv", sep = ";")
str(df)
## 'data.frame':    48 obs. of  4 variables:
##  $ Pupuk   : chr  "a0" "a0" "a0" "a0" ...
##  $ Kapur   : chr  "b0" "b0" "b0" "b1" ...
##  $ Kelompok: int  1 2 3 1 2 3 1 2 3 1 ...
##  $ Yield   : num  2.1 3.1 3.3 2.3 2.9 3.7 2.5 3 3.8 2 ...
df
##    Pupuk Kapur Kelompok Yield
## 1     a0    b0        1   2.1
## 2     a0    b0        2   3.1
## 3     a0    b0        3   3.3
## 4     a0    b1        1   2.3
## 5     a0    b1        2   2.9
## 6     a0    b1        3   3.7
## 7     a0    b2        1   2.5
## 8     a0    b2        2   3.0
## 9     a0    b2        3   3.8
## 10    a0    b3        1   2.0
## 11    a0    b3        2   1.5
## 12    a0    b3        3   1.7
## 13    a1    b0        1   3.1
## 14    a1    b0        2   3.2
## 15    a1    b0        3   3.4
## 16    a1    b1        1   3.3
## 17    a1    b1        2   3.9
## 18    a1    b1        3   3.8
## 19    a1    b2        1   3.7
## 20    a1    b2        2   3.8
## 21    a1    b2        3   3.6
## 22    a1    b3        1   3.5
## 23    a1    b3        2   3.2
## 24    a1    b3        3   3.3
## 25    a2    b0        1   4.0
## 26    a2    b0        2   4.5
## 27    a2    b0        3   4.1
## 28    a2    b1        1   4.7
## 29    a2    b1        2   5.1
## 30    a2    b1        3   5.2
## 31    a2    b2        1   7.5
## 32    a2    b2        2   8.1
## 33    a2    b2        3   7.6
## 34    a2    b3        1   7.6
## 35    a2    b3        2   7.9
## 36    a2    b3        3   7.9
## 37    a3    b0        1   4.2
## 38    a3    b0        2   4.1
## 39    a3    b0        3   4.2
## 40    a3    b1        1   4.5
## 41    a3    b1        2   4.7
## 42    a3    b1        3   4.5
## 43    a3    b2        1   6.2
## 44    a3    b2        2   6.3
## 45    a3    b2        3   6.0
## 46    a3    b3        1   6.0
## 47    a3    b3        2   6.0
## 48    a3    b3        3   6.1
# Mengubah variabel menjadi faktor
df$Pupuk <- as.factor(df$Pupuk)
df$Kapur <- as.factor(df$Kapur)
df$Kelompok <- as.factor(df$Kelompok)
#plot interaksi
interaction.plot(df$Pupuk,df$Kapur, df$Yield,
                type="l", main="Plot interaksi Pupuk dan Kapur",xlab="Pupuk", 
                ylab="Yield", trace.label="Kapur", col=1:3)

# Menggunakan fungsi aggregate untuk menghitung rata-rata Berat berdasarkan interaksi SM dan SS
interaction_table <- aggregate(Yield ~ Pupuk + Kapur, data = df, FUN = mean)

# Menampilkan tabel interaksi
interaction_table
##    Pupuk Kapur    Yield
## 1     a0    b0 2.833333
## 2     a1    b0 3.233333
## 3     a2    b0 4.200000
## 4     a3    b0 4.166667
## 5     a0    b1 2.966667
## 6     a1    b1 3.666667
## 7     a2    b1 5.000000
## 8     a3    b1 4.566667
## 9     a0    b2 3.100000
## 10    a1    b2 3.700000
## 11    a2    b2 7.733333
## 12    a3    b2 6.166667
## 13    a0    b3 1.733333
## 14    a1    b3 3.333333
## 15    a2    b3 7.800000
## 16    a3    b3 6.033333
#---Analisis ragam---#

model_FRAK<-aov(Yield ~ Pupuk * Kapur + Kelompok, data = df)
summary(model_FRAK)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Pupuk        3  92.98  30.992 324.475  < 2e-16 ***
## Kapur        3  17.46   5.820  60.936 7.20e-13 ***
## Kelompok     2   0.89   0.444   4.648   0.0174 *  
## Pupuk:Kapur  9  26.90   2.988  31.287 7.42e-13 ***
## Residuals   30   2.87   0.096                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
library(DescTools)
## Warning: package 'DescTools' was built under R version 4.3.3
PostHocTest(model_FRAK, method = 'hsd')
## 
##   Posthoc multiple comparisons of means : Tukey HSD 
##     95% family-wise confidence level
## 
## $Pupuk
##         diff     lwr.ci     upr.ci    pval    
## a1-a0  0.825  0.4819288  1.1680712 1.8e-06 ***
## a2-a0  3.525  3.1819288  3.8680712 4.6e-14 ***
## a3-a0  2.575  2.2319288  2.9180712 4.6e-14 ***
## a2-a1  2.700  2.3569288  3.0430712 4.6e-14 ***
## a3-a1  1.750  1.4069288  2.0930712 1.3e-13 ***
## a3-a2 -0.950 -1.2930712 -0.6069288 1.3e-07 ***
## 
## $Kapur
##             diff      lwr.ci     upr.ci    pval    
## b1-b0  0.4416667  0.09859542  0.7847379  0.0076 ** 
## b2-b0  1.5666667  1.22359542  1.9097379 1.5e-12 ***
## b3-b0  1.1166667  0.77359542  1.4597379 4.3e-09 ***
## b2-b1  1.1250000  0.78192876  1.4680712 3.6e-09 ***
## b3-b1  0.6750000  0.33192876  1.0180712 4.9e-05 ***
## b3-b2 -0.4500000 -0.79307124 -0.1069288  0.0064 ** 
## 
## $Kelompok
##        diff      lwr.ci    upr.ci   pval    
## 2-1 0.25625 -0.01312233 0.5256223 0.0647 .  
## 3-1 0.31250  0.04312767 0.5818723 0.0203 *  
## 3-2 0.05625 -0.21312233 0.3256223 0.8647    
## 
## $`Pupuk:Kapur`
##                    diff      lwr.ci      upr.ci    pval    
## a1:b0-a0:b0  0.40000000 -0.54056014  1.34056014 0.95913    
## a2:b0-a0:b0  1.36666667  0.42610652  2.30722681 0.00065 ***
## a3:b0-a0:b0  1.33333333  0.39277319  2.27389348 0.00093 ***
## a0:b1-a0:b0  0.13333333 -0.80722681  1.07389348 1.00000    
## a1:b1-a0:b0  0.83333333 -0.10722681  1.77389348 0.12670    
## a2:b1-a0:b0  2.16666667  1.22610652  3.10722681 1.5e-07 ***
## a3:b1-a0:b0  1.73333333  0.79277319  2.67389348 1.3e-05 ***
## a0:b2-a0:b0  0.26666667 -0.67389348  1.20722681 0.99916    
## a1:b2-a0:b0  0.86666667 -0.07389348  1.80722681 0.09603 .  
## a2:b2-a0:b0  4.90000000  3.95943986  5.84056014 4.6e-14 ***
## a3:b2-a0:b0  3.33333333  2.39277319  4.27389348 5.6e-12 ***
## a0:b3-a0:b0 -1.10000000 -2.04056014 -0.15943986 0.01070 *  
## a1:b3-a0:b0  0.50000000 -0.44056014  1.44056014 0.81689    
## a2:b3-a0:b0  4.96666667  4.02610652  5.90722681 4.6e-14 ***
## a3:b3-a0:b0  3.20000000  2.25943986  4.14056014 1.6e-11 ***
## a2:b0-a1:b0  0.96666667  0.02610652  1.90722681 0.03927 *  
## a3:b0-a1:b0  0.93333333 -0.00722681  1.87389348 0.05341 .  
## a0:b1-a1:b0 -0.26666667 -1.20722681  0.67389348 0.99916    
## a1:b1-a1:b0  0.43333333 -0.50722681  1.37389348 0.92581    
## a2:b1-a1:b0  1.76666667  0.82610652  2.70722681 9.0e-06 ***
## a3:b1-a1:b0  1.33333333  0.39277319  2.27389348 0.00093 ***
## a0:b2-a1:b0 -0.13333333 -1.07389348  0.80722681 1.00000    
## a1:b2-a1:b0  0.46666667 -0.47389348  1.40722681 0.87836    
## a2:b2-a1:b0  4.50000000  3.55943986  5.44056014 4.8e-14 ***
## a3:b2-a1:b0  2.93333333  1.99277319  3.87389348 1.4e-10 ***
## a0:b3-a1:b0 -1.50000000 -2.44056014 -0.55943986 0.00016 ***
## a1:b3-a1:b0  0.10000000 -0.84056014  1.04056014 1.00000    
## a2:b3-a1:b0  4.56666667  3.62610652  5.50722681 4.7e-14 ***
## a3:b3-a1:b0  2.80000000  1.85943986  3.74056014 4.3e-10 ***
## a3:b0-a2:b0 -0.03333333 -0.97389348  0.90722681 1.00000    
## a0:b1-a2:b0 -1.23333333 -2.17389348 -0.29277319 0.00270 ** 
## a1:b1-a2:b0 -0.53333333 -1.47389348  0.40722681 0.74344    
## a2:b1-a2:b0  0.80000000 -0.14056014  1.74056014 0.16509    
## a3:b1-a2:b0  0.36666667 -0.57389348  1.30722681 0.98007    
## a0:b2-a2:b0 -1.10000000 -2.04056014 -0.15943986 0.01070 *  
## a1:b2-a2:b0 -0.50000000 -1.44056014  0.44056014 0.81689    
## a2:b2-a2:b0  3.53333333  2.59277319  4.47389348 1.3e-12 ***
## a3:b2-a2:b0  1.96666667  1.02610652  2.90722681 1.1e-06 ***
## a0:b3-a2:b0 -2.46666667 -3.40722681 -1.52610652 8.5e-09 ***
## a1:b3-a2:b0 -0.86666667 -1.80722681  0.07389348 0.09603 .  
## a2:b3-a2:b0  3.60000000  2.65943986  4.54056014 8.1e-13 ***
## a3:b3-a2:b0  1.83333333  0.89277319  2.77389348 4.5e-06 ***
## a0:b1-a3:b0 -1.20000000 -2.14056014 -0.25943986 0.00383 ** 
## a1:b1-a3:b0 -0.50000000 -1.44056014  0.44056014 0.81689    
## a2:b1-a3:b0  0.83333333 -0.10722681  1.77389348 0.12670    
## a3:b1-a3:b0  0.40000000 -0.54056014  1.34056014 0.95913    
## a0:b2-a3:b0 -1.06666667 -2.00722681 -0.12610652 0.01494 *  
## a1:b2-a3:b0 -0.46666667 -1.40722681  0.47389348 0.87836    
## a2:b2-a3:b0  3.56666667  2.62610652  4.50722681 1.0e-12 ***
## a3:b2-a3:b0  2.00000000  1.05943986  2.94056014 8.0e-07 ***
## a0:b3-a3:b0 -2.43333333 -3.37389348 -1.49277319 1.2e-08 ***
## a1:b3-a3:b0 -0.83333333 -1.77389348  0.10722681 0.12670    
## a2:b3-a3:b0  3.63333333  2.69277319  4.57389348 6.4e-13 ***
## a3:b3-a3:b0  1.86666667  0.92610652  2.80722681 3.2e-06 ***
## a1:b1-a0:b1  0.70000000 -0.24056014  1.64056014 0.33437    
## a2:b1-a0:b1  2.03333333  1.09277319  2.97389348 5.7e-07 ***
## a3:b1-a0:b1  1.60000000  0.65943986  2.54056014 5.3e-05 ***
## a0:b2-a0:b1  0.13333333 -0.80722681  1.07389348 1.00000    
## a1:b2-a0:b1  0.73333333 -0.20722681  1.67389348 0.26858    
## a2:b2-a0:b1  4.76666667  3.82610652  5.70722681 4.7e-14 ***
## a3:b2-a0:b1  3.20000000  2.25943986  4.14056014 1.6e-11 ***
## a0:b3-a0:b1 -1.23333333 -2.17389348 -0.29277319 0.00270 ** 
## a1:b3-a0:b1  0.36666667 -0.57389348  1.30722681 0.98007    
## a2:b3-a0:b1  4.83333333  3.89277319  5.77389348 4.6e-14 ***
## a3:b3-a0:b1  3.06666667  2.12610652  4.00722681 4.6e-11 ***
## a2:b1-a1:b1  1.33333333  0.39277319  2.27389348 0.00093 ***
## a3:b1-a1:b1  0.90000000 -0.04056014  1.84056014 0.07197 .  
## a0:b2-a1:b1 -0.56666667 -1.50722681  0.37389348 0.66160    
## a1:b2-a1:b1  0.03333333 -0.90722681  0.97389348 1.00000    
## a2:b2-a1:b1  4.06666667  3.12610652  5.00722681 7.5e-14 ***
## a3:b2-a1:b1  2.50000000  1.55943986  3.44056014 6.2e-09 ***
## a0:b3-a1:b1 -1.93333333 -2.87389348 -0.99277319 1.6e-06 ***
## a1:b3-a1:b1 -0.33333333 -1.27389348  0.60722681 0.99161    
## a2:b3-a1:b1  4.13333333  3.19277319  5.07389348 6.5e-14 ***
## a3:b3-a1:b1  2.36666667  1.42610652  3.30722681 2.2e-08 ***
## a3:b1-a2:b1 -0.43333333 -1.37389348  0.50722681 0.92581    
## a0:b2-a2:b1 -1.90000000 -2.84056014 -0.95943986 2.2e-06 ***
## a1:b2-a2:b1 -1.30000000 -2.24056014 -0.35943986 0.00133 ** 
## a2:b2-a2:b1  2.73333333  1.79277319  3.67389348 7.6e-10 ***
## a3:b2-a2:b1  1.16666667  0.22610652  2.10722681 0.00541 ** 
## a0:b3-a2:b1 -3.26666667 -4.20722681 -2.32610652 9.3e-12 ***
## a1:b3-a2:b1 -1.66666667 -2.60722681 -0.72610652 2.6e-05 ***
## a2:b3-a2:b1  2.80000000  1.85943986  3.74056014 4.3e-10 ***
## a3:b3-a2:b1  1.03333333  0.09277319  1.97389348 0.02076 *  
## a0:b2-a3:b1 -1.46666667 -2.40722681 -0.52610652 0.00022 ***
## a1:b2-a3:b1 -0.86666667 -1.80722681  0.07389348 0.09603 .  
## a2:b2-a3:b1  3.16666667  2.22610652  4.10722681 2.0e-11 ***
## a3:b2-a3:b1  1.60000000  0.65943986  2.54056014 5.3e-05 ***
## a0:b3-a3:b1 -2.83333333 -3.77389348 -1.89277319 3.2e-10 ***
## a1:b3-a3:b1 -1.23333333 -2.17389348 -0.29277319 0.00270 ** 
## a2:b3-a3:b1  3.23333333  2.29277319  4.17389348 1.2e-11 ***
## a3:b3-a3:b1  1.46666667  0.52610652  2.40722681 0.00022 ***
## a1:b2-a0:b2  0.60000000 -0.34056014  1.54056014 0.57573    
## a2:b2-a0:b2  4.63333333  3.69277319  5.57389348 4.7e-14 ***
## a3:b2-a0:b2  3.06666667  2.12610652  4.00722681 4.6e-11 ***
## a0:b3-a0:b2 -1.36666667 -2.30722681 -0.42610652 0.00065 ***
## a1:b3-a0:b2  0.23333333 -0.70722681  1.17389348 0.99982    
## a2:b3-a0:b2  4.70000000  3.75943986  5.64056014 4.7e-14 ***
## a3:b3-a0:b2  2.93333333  1.99277319  3.87389348 1.4e-10 ***
## a2:b2-a1:b2  4.03333333  3.09277319  4.97389348 8.2e-14 ***
## a3:b2-a1:b2  2.46666667  1.52610652  3.40722681 8.5e-09 ***
## a0:b3-a1:b2 -1.96666667 -2.90722681 -1.02610652 1.1e-06 ***
## a1:b3-a1:b2 -0.36666667 -1.30722681  0.57389348 0.98007    
## a2:b3-a1:b2  4.10000000  3.15943986  5.04056014 7.0e-14 ***
## a3:b3-a1:b2  2.33333333  1.39277319  3.27389348 3.0e-08 ***
## a3:b2-a2:b2 -1.56666667 -2.50722681 -0.62610652 7.6e-05 ***
## a0:b3-a2:b2 -6.00000000 -6.94056014 -5.05943986 4.6e-14 ***
## a1:b3-a2:b2 -4.40000000 -5.34056014 -3.45943986 5.0e-14 ***
## a2:b3-a2:b2  0.06666667 -0.87389348  1.00722681 1.00000    
## a3:b3-a2:b2 -1.70000000 -2.64056014 -0.75943986 1.8e-05 ***
## a0:b3-a3:b2 -4.43333333 -5.37389348 -3.49277319 4.9e-14 ***
## a1:b3-a3:b2 -2.83333333 -3.77389348 -1.89277319 3.2e-10 ***
## a2:b3-a3:b2  1.63333333  0.69277319  2.57389348 3.7e-05 ***
## a3:b3-a3:b2 -0.13333333 -1.07389348  0.80722681 1.00000    
## a1:b3-a0:b3  1.60000000  0.65943986  2.54056014 5.3e-05 ***
## a2:b3-a0:b3  6.06666667  5.12610652  7.00722681 4.6e-14 ***
## a3:b3-a0:b3  4.30000000  3.35943986  5.24056014 5.2e-14 ***
## a2:b3-a1:b3  4.46666667  3.52610652  5.40722681 4.9e-14 ***
## a3:b3-a1:b3  2.70000000  1.75943986  3.64056014 1.0e-09 ***
## a3:b3-a2:b3 -1.76666667 -2.70722681 -0.82610652 9.0e-06 ***
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#plot interval kepercayaan 
plot(TukeyHSD(model_FRAK, conf.level= .95 ), las = 2 ) # las 2 artinya harus tegak lurus thd sumbu

library(sjPlot)
## Warning: package 'sjPlot' was built under R version 4.3.3
## Learn more about sjPlot with 'browseVignettes("sjPlot")'.
library(fBasics)
## Warning: package 'fBasics' was built under R version 4.3.3
library(lmtest)
## Warning: package 'lmtest' was built under R version 4.3.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.3
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(car)
## Warning: package 'car' was built under R version 4.3.3
## Loading required package: carData
## 
## Attaching package: 'car'
## The following object is masked from 'package:fBasics':
## 
##     densityPlot
## The following object is masked from 'package:DescTools':
## 
##     Recode
plot_model(model_FRAK,type = "diag")
## there are higher-order terms (interactions) in this model
## consider setting type = 'predictor'; see ?vif
## [[1]]

## 
## [[2]]
## `geom_smooth()` using formula = 'y ~ x'

## 
## [[3]]

## 
## [[4]]
## `geom_smooth()` using formula = 'y ~ x'

vif(model_FRAK)
## there are higher-order terms (interactions) in this model
## consider setting type = 'predictor'; see ?vif
##             GVIF Df GVIF^(1/(2*Df))
## Pupuk         64  3        2.000000
## Kapur         64  3        2.000000
## Kelompok       1  2        1.000000
## Pupuk:Kapur 1792  9        1.516146
res <- residuals(model_FRAK)
shapiroTest(res)
## 
## Title:
##  Shapiro - Wilk Normality Test
## 
## Test Results:
##   STATISTIC:
##     W: 0.984
##   P VALUE:
##     0.7497
leveneTest(Yield~Pupuk*Kapur*Pupuk:Kapur, data=df)
## Levene's Test for Homogeneity of Variance (center = median)
##       Df F value Pr(>F)
## group 15  0.9768 0.4994
##       32
library(doebioresearch)
## Warning: package 'doebioresearch' was built under R version 4.3.3
frbd2fact(df[4], df$Kelompok, df$Pupuk, df$Kapur, 3)
## $Yield
## $Yield[[1]]
## Analysis of Variance Table
## 
## Response: dependent.var
##                   Df Sum Sq Mean Sq  F value    Pr(>F)    
## replicationvector  2  0.888  0.4440   4.6481   0.01744 *  
## fact.A             3 92.976 30.9919 324.4751 < 2.2e-16 ***
## fact.B             3 17.461  5.8202  60.9357 7.200e-13 ***
## fact.A:fact.B      9 26.895  2.9884  31.2871 7.416e-13 ***
## Residuals         30  2.865  0.0955                       
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## $Yield[[2]]
## [1] "R Square 0.98"
## 
## $Yield[[3]]
## [1] "SEm of A: 0.089 , SEd of A: 0.126 , SEm of B: 0.089 , SEd of B 0.126 , SEm of AB: 0.178 , SEd of AB: 0.252"
## 
## $Yield[[4]]
## 
##  Shapiro-Wilk normality test
## 
## data:  model$residuals
## W = 0.984, p-value = 0.7497
## 
## 
## $Yield[[5]]
## [1] "Normality assumption is not violated"
## 
## $Yield[[6]]
## [1] "The means of one or more levels of first factor are not same, so go for multiple comparison test"
## 
## $Yield[[7]]
## $Yield[[7]][[1]]
##      MSerror Df     Mean       CV       MSD
##   0.09551389 30 4.389583 7.040605 0.3430712
## 
## $Yield[[7]][[2]]
##    test name.t ntr StudentizedRange alpha
##   Tukey fact.A   4         3.845401  0.05
## 
## $Yield[[7]][[3]]
##    dependent.var groups
## a2      6.183333      a
## a3      5.233333      b
## a1      3.483333      c
## a0      2.658333      d
## 
## 
## $Yield[[8]]
## [1] "The means of one or more levels of second factor are not same, so go for multiple comparison test"
## 
## $Yield[[9]]
## $Yield[[9]][[1]]
##      MSerror Df     Mean       CV       MSD
##   0.09551389 30 4.389583 7.040605 0.3430712
## 
## $Yield[[9]][[2]]
##    test name.t ntr StudentizedRange alpha
##   Tukey fact.B   4         3.845401  0.05
## 
## $Yield[[9]][[3]]
##    dependent.var groups
## b2      5.175000      a
## b3      4.725000      b
## b1      4.050000      c
## b0      3.608333      d
## 
## 
## $Yield[[10]]
## [1] "The means of levels of interaction between two factors are not same, so go for multiple comparison test"
## 
## $Yield[[11]]
## $Yield[[11]][[1]]
##      MSerror Df     Mean       CV       MSD
##   0.09551389 30 4.389583 7.040605 0.9405601
## 
## $Yield[[11]][[2]]
##    test        name.t ntr StudentizedRange alpha
##   Tukey fact.A:fact.B  16         5.271254  0.05
## 
## $Yield[[11]][[3]]
##       dependent.var groups
## a2:b3      7.800000      a
## a2:b2      7.733333      a
## a3:b2      6.166667      b
## a3:b3      6.033333      b
## a2:b1      5.000000      c
## a3:b1      4.566667     cd
## a2:b0      4.200000    cde
## a3:b0      4.166667   cdef
## a1:b2      3.700000   defg
## a1:b1      3.666667   defg
## a1:b3      3.333333    efg
## a1:b0      3.233333     fg
## a0:b2      3.100000      g
## a0:b1      2.966667      g
## a0:b0      2.833333      g
## a0:b3      1.733333      h