1 PENDAHULUAN

1.1 Latar Belakang

Analisis ragam (ANOVA) adalah analisis yang dilakukan untuk menguji perbedaan rata-rata dari beberapa kelompok (>2) yang berasal dari perlakuan yang berbeda-beda.
Hipotesis yang digunakan :

\(H_{0} : \mu_1 = \dots = \mu_k\)
\(H_{1} :\) paling sedikit terdapat satu pasang \(i\) dan \(i'\) dengan \(\mu_{i} \ne \mu_{i'}\)

Keterangan :
\(k\) = banyaknya perlakuan

Model linear untuk analisis ragam satu arah : \[ Y_{ij} = \mu_{i} + \varepsilon_{ij} \] Keterangan :
\(Y_{ij}\) = Pengamatan pada perlakuan ke \(i\) ulangan ke \(j\)
\(\mu_{i}\) = Rata-rata perlakuan ke \(i\)
\(\varepsilon_{ij}\) = Galat pada perlakuan ke \(i\) ulangan ke \(j\)
\(i=1,..,k\)
\(j=1,...,n_{i}\)
Dengan \(n_{i}\) adalah banyaknya pengamatan di setiap kelompok perlakuan \(i\).

Jumlah kuadrat nilai pengamatan di sekitar rata-rata (JKT) dapat diuraikan menjadi Jumlah Kuadrat Perlakuan (JKP) dan Jumlah Kuadrat Galat (JKG).
\[ JKT = JKP + JKG \] \[ \Sigma \Sigma (Y_{ij}-\bar{Y_{..}})^{2}= \Sigma n_{i}(Y_{i}-\bar{Y_{..}})^{2} + \Sigma \Sigma (Y_{ij}-\bar{Y_{i.}})^{2} \]

1.2 Statistika Deskriptif

Sebagai langkah awal dalam analisis data, dilakukan eksplorasi data. Data respon masing-masing perlakuan disajikan dalam bentuk boxplot untuk melihat sebaran data respon masing-masing perlakuan. Akan dilihat apakah terlihat perbedaan antar perlakuan.

1.3 Data

Data respon pada analisis ini menggunakan data bangkitan yang didapatkan dari fungsi rnorm. Respon masing-masing perlakuan dibangkitkan dengan nilai rata-rata dan simpangan baku yang berbeda.

          y1        y2        y3        y4        y5
1   7.758097  8.758097  8.637146  8.516195  7.197622
2   9.079290 10.079290 10.618935 11.158580  8.849113
3  16.234833 17.234833 21.352250 25.469667 17.793542
4  10.282034 11.282034 12.423050 13.564067 10.352542
5  10.517151 11.517151 12.775726 14.034302 10.646439
6  16.860260  8.758097 22.290390  8.516195 18.575325
7  11.843665 10.079290 14.765497 11.158580 12.304581
8   4.939755 17.234833  4.409633 25.469667  3.674694
9   7.252589 11.282034  7.878883 13.564067  6.565736
10  8.217352 11.517151  9.326028 14.034302  7.771690

2 SOURCE CODE

2.1 Library yang Dibutuhkan

> library(tseries)
> library(car)
> library(agricolae)

2.2 Membangkitkan Data

> set.seed(123)
> y1=rnorm(10,10,4)
> set.seed(123)
> y2=rnorm(5,11,4)
> set.seed(123)
> y3=rnorm(10,12,6)
> set.seed(123)
> y4=rnorm(5,13,8)
> set.seed(123)
> y5=rnorm(10,10,5)
> respon=c(y1,y2,y3,y4,y5)

Data dibangkitkan dengan cara simulasi. Function rnorm digunakan untuk membangkitkan data dari distribusi normal sejumlah \(n\) dengan parameter \(\mu\) dan \(\sigma\). Argument yang diisikan dalam function adalah rnorm(\(n,\mu,\sigma\)) dengan \(n\) banyaknya data yang ingin dibangkitkan, \(\mu\) rata-rata data respon dan \(\sigma\) simpangan baku data respon.

2.3 Membuat Vektor Perlakuan

> f1=rep(1,10)
> f2=rep(2,5)
> f3=rep(3,10)
> f4=rep(4,5)
> f5=rep(5,10)
> perlakuan=as.factor(c(f1,f2,f3,f4,f5))

Vektor perlakuan dibuat dengan menggunakan fungsi rep untuk mereplikasi suatu bilangan sebanyak \(n\) kali. Argumen yang diisikan dalam function adalah rep(\(x,n\)) dengan \(x\) adalah bilangan atau huruf yang melambangkan suatu perlakuan dan \(n\) adalah banyaknya ulangan pada perlakuan tersebut.
Selanjutnya menggunakan fungsi as.factor agar bilangan yang telah disusun terbaca sebagai faktor atau perlakuan.

2.4 Membuat Data Frame

> dataku=data.frame(perlakuan,respon)

Vektor yang berisi perlakuan dan respon dimasukkan kedalam data frame menggunakan function data.frame(). Argumen yang diisikan dalam function adalah data.frame(nama-nama vektor yang ingin dimasukkan).

2.5 Pembentukan Boxplot

> boxplot(respon~perlakuan, dataku, main="Boxplot respon setiap perlakuan",
+         xlab="perlakuan",ylab="respon")

Sebagai screening awal dari proses analisis data, dilakukan pembentukan boxplot masing-masing perlakuan untuk melihat sebaran data dan pembandingan masing-masing perlakuan secara grafis.
Function yang digunakan adalah boxplot(). Argumen yang dimasukkan dalam function adalah boxplot(formula, data, main, xlab, ylab).

2.6 Analisis Ragam

> anova=aov(respon~perlakuan,dataku)
> summary(anova)
            Df Sum Sq Mean Sq F value Pr(>F)
perlakuan    4   82.8   20.69   0.861  0.497
Residuals   35  840.9   24.03               

Analisis ragam dilakukan dengan menggunakan built in function aov. Argumen yang dimasukkan dalam function adalah aov(formula,data).
Untuk menampilkan hasil analisis secara lengkap digunakan function summary().

2.7 Diagnostik Sisaan

2.7.1 Diagnostic Plot

> plot(anova,1)

> plot(anova,2)

> plot(anova,3)

Sebelum pengujian asumsi, dilakukan screening awal dengan diagnostic plot. Function yang digunakan adalah plot(). Argumen yang dimasukkan dalam function adalah plot(objek kelas lm atau anova,which). Berikut adalah kode yang dimasukkan dalam argumen which beserta plot yang akan ditampilkan :
1. Plot residual vs fitted
2. QQ plot
3. Plot scale-location

2.8 Uji Asumsi

Terdapat beberapa asumsi yang harus dipenuhi yaitu :
1. Asumsi normalitas sisaan
2. Asumsi homogenitas sisaan

2.8.1 Uji Normalitas Sisaan

> sisaan=residuals(anova)
> jarque.bera.test(sisaan)

    Jarque Bera Test

data:  sisaan
X-squared = 4.0079, df = 2, p-value = 0.1348
> shapiro.test(sisaan)

    Shapiro-Wilk normality test

data:  sisaan
W = 0.92401, p-value = 0.01032

Terlebih dahulu dilakukan pendefinisian sisaan menggunakan function residuals(). Selanjutnya dilakukan uji normalitas sisaan menggunakan function jarque.bera.test() dan shapiro.test(). Argumen yang dimasukkan dalam function adalah jarque.bera.test(sisaan) dan shapiro.test(sisaan).

2.8.2 Uji Homogenitas Sisaan

> leveneTest(respon~perlakuan,dataku)
Levene's Test for Homogeneity of Variance (center = median)
      Df F value Pr(>F)
group  4  0.5245 0.7184
      35               

Function yang digunakan dalam pengujian kehomogenan ragam sisaan adalah leveneTest(). Argumen yang dimasukkan dalam function adalah leveneTest(formula,data).

2.9 Uji Lanjut

> bnt=LSD.test(anova,"perlakuan",alpha=0.05)
> bnt$groups
    respon groups
4 14.54856      a
3 12.44775      a
2 11.77428      a
5 10.37313      a
1 10.29850      a
> bnt$means
    respon      std  r       LCL      UCL      Min      Max       Q25       Q50
1 10.29850 3.815136 10  7.151776 13.44523 4.939755 16.86026  7.872911  9.680662
2 11.77428 3.244087  5  7.324137 16.22443 8.758097 17.23483 10.079290 11.282034
3 12.44775 5.722704 10  9.301027 15.59448 4.409633 22.29039  8.809367 11.520993
4 14.54856 6.488175  5 10.098418 18.99871 8.516195 25.46967 11.158580 13.564067
5 10.37313 4.768920 10  7.226401 13.51986 3.674694 18.57532  7.341139  9.600827
       Q75
1 11.51204
2 11.51715
3 14.26805
4 14.03430
5 11.89005
> plot(bnt)

> TukeyHSD(anova, conf.level = 0.95)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = respon ~ perlakuan, data = dataku)

$perlakuan
           diff        lwr       upr     p adj
2-1  1.47577847  -6.242982  9.194539 0.9812626
3-1  2.14925129  -4.153090  8.451593 0.8622084
4-1  4.25005951  -3.468701 11.968820 0.5177412
5-1  0.07462564  -6.227716  6.376967 0.9999997
3-2  0.67347282  -7.045287  8.392233 0.9990820
4-2  2.77428104  -6.138575 11.687137 0.8968536
5-2 -1.40115282  -9.119913  6.317607 0.9845447
4-3  2.10080822  -5.617952  9.819568 0.9339880
5-3 -2.07462564  -8.376967  4.227716 0.8766360
5-4 -4.17543387 -11.894194  3.543326 0.5349299
> plot(TukeyHSD(anova))

Uji lanjutan menggunakan function LSD.test() dan TukeyHSD(). Argumen yang diisikan dalam function adalah LSD.test(objek kelas lm atau anova, vektor perlakuan,alpha) dan TukeyHSD(objek kelas lm atau anova, confident level).

3 HASIL DAN PEMBAHASAN

3.1 Analisis grafis atau boxplot

Secara visual terlihat bahwa tidak terdapat perbedaan signifikan pada rata - rata respon tiap perlakuan.

3.2 Anova

            Df Sum Sq Mean Sq F value Pr(>F)
perlakuan    4   82.8   20.69   0.861  0.497
Residuals   35  840.9   24.03               

Dengan nilai p yang besar, maka tidak terdapat bukti bahwa terdapat paling sedikit satu perlakuan yang secara signifikan memiliki rata-rata respon yang berbeda. Keabsahan hasil ini masih perlu dipastikan melalui pemeriksaan asumsi.

3.3 Diagnostik sisaan

Garis merah yang menghubungkan pusat dari 5 kelompok sisaan masih terlihat datar, model sudah tepat.

Titik-titik berada tidak jauh dari garis dengan sudut 45 derajat antara sumbu x dan Y di kuadran 1, secara grafis tidak ada indikasi pelanggaran normalitas.

Garis merah yang menghubungkan pusat dari 4 kelompok akar sisaan yang dibakukan, cenderung membentuk kurva cosinus, walaupun tidak terlalu ekstrim. Ada kecurigaan ketidaksamaan ragam.

3.4 Uji Asumsi

3.4.1 Uji Normalitas Sisaan


    Jarque Bera Test

data:  sisaan
X-squared = 4.0079, df = 2, p-value = 0.1348

    Shapiro-Wilk normality test

data:  sisaan
W = 0.92401, p-value = 0.01032

Nilai p yang didapat dari uji jarque bera cukup besar, sehingga H0 tentang normalitas galat tidak dapat ditolak. Asumsi normalitas galat masih terpenuhi.

3.4.2 Uji Homogenitas Sisaan

Levene's Test for Homogeneity of Variance (center = median)
      Df F value Pr(>F)
group  4  0.5245 0.7184
      35               

Nilai p yang cukup besar, sehingga H0 tentang kesamaan ragam antar lokasi, tidak dapat ditolak. Asumsi kesamaan ragam antar lokasi masih terpenuhi.

3.5 Uji Lanjutan

    respon groups
4 14.54856      a
3 12.44775      a
2 11.77428      a
5 10.37313      a
1 10.29850      a
    respon      std  r       LCL      UCL      Min      Max       Q25       Q50
1 10.29850 3.815136 10  7.151776 13.44523 4.939755 16.86026  7.872911  9.680662
2 11.77428 3.244087  5  7.324137 16.22443 8.758097 17.23483 10.079290 11.282034
3 12.44775 5.722704 10  9.301027 15.59448 4.409633 22.29039  8.809367 11.520993
4 14.54856 6.488175  5 10.098418 18.99871 8.516195 25.46967 11.158580 13.564067
5 10.37313 4.768920 10  7.226401 13.51986 3.674694 18.57532  7.341139  9.600827
       Q75
1 11.51204
2 11.51715
3 14.26805
4 14.03430
5 11.89005

Respon di semua perlakuan sama secara rata-rata

  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = respon ~ perlakuan, data = dataku)

$perlakuan
           diff        lwr       upr     p adj
2-1  1.47577847  -6.242982  9.194539 0.9812626
3-1  2.14925129  -4.153090  8.451593 0.8622084
4-1  4.25005951  -3.468701 11.968820 0.5177412
5-1  0.07462564  -6.227716  6.376967 0.9999997
3-2  0.67347282  -7.045287  8.392233 0.9990820
4-2  2.77428104  -6.138575 11.687137 0.8968536
5-2 -1.40115282  -9.119913  6.317607 0.9845447
4-3  2.10080822  -5.617952  9.819568 0.9339880
5-3 -2.07462564  -8.376967  4.227716 0.8766360
5-4 -4.17543387 -11.894194  3.543326 0.5349299

Batas atas dan bawah berbeda tanda untuk semua pasangan perlakuan (memuat nol). Respon di semua perlakuan sama secara rata-rata.

Selang kepercayaan memuat nol untuk semua pasangan perlakuan. Respon di semua perlakuan sama secara rata-rata.

4 DAFTAR PUSTAKA

Rahma Fitriani. 2022. Materi pembelajaran komputasi statistika : M9 Anova dalam R.