Uji Normalitas

  1. Data berikut menunjukkan masa putar film (menit) diproduksi dua perusahaan film yang berbeda:
perusahaan1 <- c(102, 86, 98, 109, 92)
perusahaan2 <- c(81, 165, 97, 134, 92, 87, 114)
length(perusahaan1)<- length(perusahaan2)
data <- data.frame(perusahaan1,perusahaan2)
t(data)
##             [,1] [,2] [,3] [,4] [,5] [,6] [,7]
## perusahaan1  102   86   98  109   92   NA   NA
## perusahaan2   81  165   97  134   92   87  114

Uji hipotesis bahwa data masa putar rata-rata film yang di produksi berdistribusi normal?

rata_pp <- (perusahaan1+perusahaan2)/2
rata_pp[6]<- (87)
rata_pp[7]<-(114)
rata_pp
## [1]  91.5 125.5  97.5 121.5  92.0  87.0 114.0

Uji Hipotesis

H0 : Data berdistribusi Normal

H1 : Data Tidak Berdistribusi Normal

Pengambilan Keputusan:

p-value > alpha (Gagal Tolak H0)

p-value < alpha (Tolak H0)

shapiro_data <- shapiro.test(rata_pp)
shapiro_data
## 
##  Shapiro-Wilk normality test
## 
## data:  rata_pp
## W = 0.87299, p-value = 0.1971

Menurut hasil uji Shapiro Wilk, tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (0.1971) lebih besar dari alpha(0.05). Maka dapat disimpulkan bahwa data Berditribusi Normal.

library(tseries)
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
jb_nilai <- jarque.bera.test(rata_pp)
jb_nilai
## 
##  Jarque Bera Test
## 
## data:  rata_pp
## X-squared = 0.87582, df = 2, p-value = 0.6454

Menurut hasil Uji Jarque Bera, Tidak cukup bukti untuk menolak hipotesis nol karena p-value (0.6454) lebih besar dari alpha (0.05). Maka, dapat disimpulkan bahwa data Berdistribusi Normal.

library(nortest)
lillie_test <- lillie.test(rata_pp)
lillie_test
## 
##  Lilliefors (Kolmogorov-Smirnov) normality test
## 
## data:  rata_pp
## D = 0.23424, p-value = 0.291

Menurut Hasil Uji Kolmogorov-Smirnov, tidak cukup bukti untuk menolak hipotesis nol karena p-value (0.291) lebih besar dari alpha (0.05). Maka, dapat disimpulkan bahwa data Berdistribusi Normal.

  1. Gunakan Data Faitful yang terdapat pada R. Lakukan pengecekan dengan Grafik dan Pengujian kenormalan data eruptions dan waiting pada data Faithful tersebut

    data("faithful")
    head(faithful)
    ##   eruptions waiting
    ## 1     3.600      79
    ## 2     1.800      54
    ## 3     3.333      74
    ## 4     2.283      62
    ## 5     4.533      85
    ## 6     2.883      55

Histogram

x_range <- range(faithful$eruptions)
y_max <- max(hist(faithful$eruptions, plot = FALSE)$density)*1.3
hist(faithful$eruptions,
     main = "Distribusi Eruptions pada Faithful",
     xlab = "Nilai",
     ylab = "Kepadatan",
     col = "darkolivegreen",
     border = "pink",
     prob = TRUE,
     xlim = c(x_range[1]-2, x_range[2]+2),
     ylim = c(0, y_max))
curve(dnorm(x,mean = mean(faithful$eruptions),sd = sd(faithful$eruptions)),
      col = "magenta",
      lwd = 3,
      add = TRUE)
lines(density(faithful$eruptions), col = "lightblue", lwd = 3)

x_range <- range(faithful$waiting)
y_max <- max(hist(faithful$waiting, plot = FALSE)$density)*1.5
hist(faithful$waiting,
     main = "Distribusi Waiting pada Faithful",
     xlab = "Nilai",
     ylab = "Kepadatan",
     col = "darkolivegreen",
     border = "pink",
     prob = TRUE,
     xlim = c(x_range[1]-20, x_range[2]+20),
     ylim = c(0, y_max))
curve(dnorm(x,mean = mean(faithful$waiting),sd = sd(faithful$waiting)),
      col = "magenta",
      lwd = 3,
      add = TRUE)
lines(density(faithful$waiting), col = "lightblue", lwd = 3)

Boxplot

boxplot(faithful$eruptions,
        main = "Boxplot Data eruptions pada Faithful",
        ylab = "Nilai",
        col = c("coral"),
        border = "blue")
points(1, mean(faithful$eruptions), col = "black", pch = 19)

boxplot(faithful$waiting,
        main = "Boxplot Data waiting pada Faithful",
        ylab = "Nilai",
        col = c("khaki"),
        border = "blue")
points(1, mean(faithful$waiting), col = "black", pch = 19)

qqplot

ggpubr::ggqqplot(faithful$eruptions)

ggpubr::ggqqplot(faithful$waiting)

Menggunakan Pengujian Kenormalan Data:

Pengujian data

- Uji Hiptesis
H0 : Data berdistribusi Normal
H1 :Data tidak berdistribusi Normal

Pengambilan Keputusan:

p-value > alpha (Gagal Tolak H0)
p-value <= alpha (Tolak H0)
shapiro_data1 <- shapiro.test(faithful$eruptions)
shapiro_data1
## 
##  Shapiro-Wilk normality test
## 
## data:  faithful$eruptions
## W = 0.84592, p-value = 9.036e-16
shapiro_data2 <- shapiro.test(faithful$waiting)
shapiro_data2
## 
##  Shapiro-Wilk normality test
## 
## data:  faithful$waiting
## W = 0.92215, p-value = 1.015e-10

Menurut hasil uji Shapiro Wilk, untuk data eruptions tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (9.036e-16) lebih besar dari alpha(0.05), Maka dapat disimpulkan bahwa data Berditribusi Normal.Begitupula untuk data waiting tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (1.015e-10) lebih besar dari alpha(0.05), Maka dapat disimpulkan bahwa data Berditribusi Normal.

library(tseries)
jb_nilai1 <- jarque.bera.test(faithful$eruptions)
jb_nilai1
## 
##  Jarque Bera Test
## 
## data:  faithful$eruptions
## X-squared = 33.36, df = 2, p-value = 5.702e-08
jb_nilai2 <- jarque.bera.test(faithful$waiting)
jb_nilai2
## 
##  Jarque Bera Test
## 
## data:  faithful$waiting
## X-squared = 22.654, df = 2, p-value = 1.204e-05

Menurut hasil uji Jarque Bera, untuk data eruptions tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (5,702e-08) lebih besar dari alpha(0.05), Maka dapat disimpulkan bahwa data Berditribusi Normal.Begitupula untuk data waiting tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (1.204e-05) lebih besar dari alpha(0.05), Maka dapat disimpulkan bahwa data Berditribusi Normal.

library(nortest)
lillie_test1 <- lillie.test(faithful$eruptions)
lillie_test1
## 
##  Lilliefors (Kolmogorov-Smirnov) normality test
## 
## data:  faithful$eruptions
## D = 0.18135, p-value < 2.2e-16
lillie_test2 <- lillie.test(faithful$waiting)
lillie_test2
## 
##  Lilliefors (Kolmogorov-Smirnov) normality test
## 
## data:  faithful$waiting
## D = 0.15536, p-value < 2.2e-16

Menurut hasil uji Kolmogorov-Smirnov, untuk data eruptions tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (2.2e-16) lebih besar dari alpha(0.05), Maka dapat disimpulkan bahwa data Berditribusi Normal.Begitupula untuk data waiting tidak ada cukup bukti untuk menolak hipotesis nol karena p-value (2.2e-16) lebih besar dari alpha(0.05), Maka dapat disimpulkan bahwa data Berditribusi Normal.

  1. Kelebihan dan Kekurangan pengecekan data antara Histogram, Boxplot dan QQplot
  1. Menampilkan gambaran distribusi data secara visual, termasuk bentuk simetri atau skewness. 2.Mudah dipahami dan memberikan informasi tentang frekuensi data dalam interval tertentu.

    Kekurangan:

1.Kurang akurat untuk memastikan kenormalan terutama pada ukuran sampel kecil. 2.Bentuk histogram bisa berbeda tergantung pada pemilihan jumlah bin (interval), sehingga interpretasi bisa subjektif.

  1. Menyajikan ringkasan distribusi data secara grafis yang meliputi median, kuartil (Q1, Q3), rentang interkuartil (IQR), serta outlier dan nilai ekstrim

  2. Dapat menunjukkan derajat penyebaran data, kesimetrisan (skewness), dan adanya outlier.

  3. Sangat berguna untuk membandingkan sebaran beberapa kelompok data secara bersamaan.

  4. Memberikan informasi yang lebih terstruktur tentang distribusi data daripada histogram.

    Kekurangan:

  5. Tidak memberikan informasi lengkap tentang kesesuaian data dengan distribusi normal.

  6. Kurang detail dalam menunjukkan bentuk distribusi secara keseluruhan dibandingkan histogram atau qqplot.

  1. Memberikan gambaran langsung apakah data mengikuti distribusi normal dengan membandingkan kuantil data dengan kuantil distribusi normal.

  2. Lebih sensitif dalam mendeteksi deviasi dari normalitas dibandingkan histogram dan boxplot.

  3. Visualisasi yang jelas untuk melihat penyimpangan dari garis lurus yang menandakan normalitas.

    Kekurangan:

  4. Membutuhkan pemahaman lebih dalam untuk interpretasi yang tepat.

  5. Tidak memberikan informasi tentang outlier atau penyebaran data secara eksplisit seperti boxplot.

  6. Berikut penjelasan perbedaan penggunaan antara Uji Shapiro-Wilk, Uji Jarque-Bera, dan Uji Kolmogorov-Smirnov:

  1. Digunakan untuk menguji normalitas data, khususnya pada sampel berukuran kecil (biasanya kurang dari 50 atau 100 data).
  2. Uji ini sangat sensitif terhadap deviasi dari distribusi normal dan efektif untuk sampel kecil.
  3. Hipotesis nol (H0) menyatakan data berdistribusi normal; jika nilai p-value > 0,05, maka data dianggap normal.
  1. Juga digunakan untuk menguji normalitas data, tetapi lebih cocok untuk sampel yang lebih besar (biasanya lebih dari 50 atau bahkan hingga ribuan data).
  2. Uji ini membandingkan distribusi data dengan distribusi teoritis (misalnya distribusi normal) dan mengukur jarak maksimum antara keduanya.
  3. Hipotesis nol menyatakan data berdistribusi normal; jika p-value > 0,05, data dianggap normal.
  4. Sering digunakan ketika ukuran sampel besar dan juga bisa digunakan untuk menguji distribusi lain, tidak hanya normalitas.
  1. Uji ini juga digunakan untuk menguji normalitas, tetapi dengan pendekatan berbeda, yaitu berdasarkan skewness (kemencengan) dan kurtosis (keruncingan) data.
  2. Jarque-Bera menguji apakah data memiliki skewness dan kurtosis yang sesuai dengan distribusi normal.
  3. Tidak spesifik untuk ukuran sampel tertentu, tapi lebih sering digunakan untuk sampel yang cukup besar.
  4. Jika nilai statistik Jarque-Bera signifikan (p-value < 0,05), maka data tidak berdistribusi normal.