Studi Kasus

Mahasiswa sering datang ke kampus antara pukul 07.00 sampai 08.00. Kami anggota kelompok 5 ingin mengetahui apakah rata-rata jam kedatangan mahasiswa berbeda pada hari Senin, Rabu, dan Jumat.Untuk itu,dilakukan pengambilan data acak berupa jam kedatangan mahasiswa yang diasumsikan mengikuti distribusi Uniform. Pada hari Senin, Rabu, dan Jumat diambil 30 sampel waktu kedatangan mahasiswa.

Berikut adalah cara membangkitkan data acak pada Uji Uniform:

# Bangkitkan data kedatangan 30 mahasiswa untuk setiap hari dengan distribusi uniform 7.0–8.0
senin <- runif(30, min = 7.0, max = 8.0)
senin # Menampilkan data Senin
##  [1] 7.769000 7.702542 7.892736 7.643565 7.039217 7.935320 7.211822 7.497866
##  [9] 7.905604 7.401397 7.392306 7.901847 7.822372 7.551798 7.615292 7.821150
## [17] 7.264407 7.982551 7.631396 7.095886 7.910777 7.869447 7.735694 7.259981
## [25] 7.633341 7.299287 7.579661 7.928180 7.601572 7.178635
rabu <- runif(30, min = 7.0, max = 8.0)
rabu # Menampilkan data Rabu
##  [1] 7.723178 7.012681 7.360389 7.440991 7.984676 7.690306 7.696834 7.135700
##  [9] 7.485371 7.898004 7.301223 7.240990 7.321446 7.472912 7.162291 7.401767
## [17] 7.931980 7.454297 7.342635 7.268158 7.429477 7.631470 7.985136 7.265914
## [25] 7.989214 7.030737 7.401663 7.076079 7.298243 7.248838
jumat <- runif(30, min = 7.0, max = 8.0)  
jumat # Menampilkan data Jumat
##  [1] 7.174808 7.077284 7.736852 7.035351 7.417264 7.824583 7.818513 7.216822
##  [9] 7.782775 7.536145 7.225733 7.226086 7.798557 7.461420 7.487213 7.965705
## [17] 7.598491 7.898768 7.779449 7.597629 7.000610 7.188665 7.099338 7.019985
## [25] 7.934036 7.406975 7.707774 7.387103 7.318984 7.820431
#Gabungkan ke data frame 
hari <- rep (c("Senin", "Rabu", "Jumat"), each = 30) #Membuat vektor hari untuk tiap data (30 data per hari)
kedatangan <-  c (senin, rabu, jumat) #Menggabungkan semua data kedatangan ke dalam satu vektor
kedatangan #kolom jam
##  [1] 7.769000 7.702542 7.892736 7.643565 7.039217 7.935320 7.211822 7.497866
##  [9] 7.905604 7.401397 7.392306 7.901847 7.822372 7.551798 7.615292 7.821150
## [17] 7.264407 7.982551 7.631396 7.095886 7.910777 7.869447 7.735694 7.259981
## [25] 7.633341 7.299287 7.579661 7.928180 7.601572 7.178635 7.723178 7.012681
## [33] 7.360389 7.440991 7.984676 7.690306 7.696834 7.135700 7.485371 7.898004
## [41] 7.301223 7.240990 7.321446 7.472912 7.162291 7.401767 7.931980 7.454297
## [49] 7.342635 7.268158 7.429477 7.631470 7.985136 7.265914 7.989214 7.030737
## [57] 7.401663 7.076079 7.298243 7.248838 7.174808 7.077284 7.736852 7.035351
## [65] 7.417264 7.824583 7.818513 7.216822 7.782775 7.536145 7.225733 7.226086
## [73] 7.798557 7.461420 7.487213 7.965705 7.598491 7.898768 7.779449 7.597629
## [81] 7.000610 7.188665 7.099338 7.019985 7.934036 7.406975 7.707774 7.387103
## [89] 7.318984 7.820431
Jam_Kedatangan <- data.frame (Hari = factor ( hari, levels = c ("Senin", "Rabu", "Jumat")), Jam = kedatangan ) # Membuat data frame yang berisi kolom hari dan jam kedatangan 
Jam_Kedatangan # Menampilkan isi data frame
##     Hari      Jam
## 1  Senin 7.769000
## 2  Senin 7.702542
## 3  Senin 7.892736
## 4  Senin 7.643565
## 5  Senin 7.039217
## 6  Senin 7.935320
## 7  Senin 7.211822
## 8  Senin 7.497866
## 9  Senin 7.905604
## 10 Senin 7.401397
## 11 Senin 7.392306
## 12 Senin 7.901847
## 13 Senin 7.822372
## 14 Senin 7.551798
## 15 Senin 7.615292
## 16 Senin 7.821150
## 17 Senin 7.264407
## 18 Senin 7.982551
## 19 Senin 7.631396
## 20 Senin 7.095886
## 21 Senin 7.910777
## 22 Senin 7.869447
## 23 Senin 7.735694
## 24 Senin 7.259981
## 25 Senin 7.633341
## 26 Senin 7.299287
## 27 Senin 7.579661
## 28 Senin 7.928180
## 29 Senin 7.601572
## 30 Senin 7.178635
## 31  Rabu 7.723178
## 32  Rabu 7.012681
## 33  Rabu 7.360389
## 34  Rabu 7.440991
## 35  Rabu 7.984676
## 36  Rabu 7.690306
## 37  Rabu 7.696834
## 38  Rabu 7.135700
## 39  Rabu 7.485371
## 40  Rabu 7.898004
## 41  Rabu 7.301223
## 42  Rabu 7.240990
## 43  Rabu 7.321446
## 44  Rabu 7.472912
## 45  Rabu 7.162291
## 46  Rabu 7.401767
## 47  Rabu 7.931980
## 48  Rabu 7.454297
## 49  Rabu 7.342635
## 50  Rabu 7.268158
## 51  Rabu 7.429477
## 52  Rabu 7.631470
## 53  Rabu 7.985136
## 54  Rabu 7.265914
## 55  Rabu 7.989214
## 56  Rabu 7.030737
## 57  Rabu 7.401663
## 58  Rabu 7.076079
## 59  Rabu 7.298243
## 60  Rabu 7.248838
## 61 Jumat 7.174808
## 62 Jumat 7.077284
## 63 Jumat 7.736852
## 64 Jumat 7.035351
## 65 Jumat 7.417264
## 66 Jumat 7.824583
## 67 Jumat 7.818513
## 68 Jumat 7.216822
## 69 Jumat 7.782775
## 70 Jumat 7.536145
## 71 Jumat 7.225733
## 72 Jumat 7.226086
## 73 Jumat 7.798557
## 74 Jumat 7.461420
## 75 Jumat 7.487213
## 76 Jumat 7.965705
## 77 Jumat 7.598491
## 78 Jumat 7.898768
## 79 Jumat 7.779449
## 80 Jumat 7.597629
## 81 Jumat 7.000610
## 82 Jumat 7.188665
## 83 Jumat 7.099338
## 84 Jumat 7.019985
## 85 Jumat 7.934036
## 86 Jumat 7.406975
## 87 Jumat 7.707774
## 88 Jumat 7.387103
## 89 Jumat 7.318984
## 90 Jumat 7.820431

Statistika Deskriptif

Menghitung ukuran pemusatan data.

Ukuran pemusatan data digunakan untuk melihat nilai yang mewakili sekumpulan data. Pada analisis ini kami menghitung mean, median, standar deviasi, dan varian dari jam kedatangan 30 mahasiswa. Perhitungan ini digunakan untuk membandingkan kondisi umum waktu kedatangan mahasiswa secara keseluruhan.

library(dplyr) #Memanggil library dplyr untuk manipulasi data 
## Warning: package 'dplyr' was built under R version 4.5.1
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
#Menghitung ukuran pemusatan dan penyebaran data 
Jam_Kedatangan %>%
  summarise(
    mean_jam = mean(kedatangan), #Rata-rata jam kedatangan
    median_jam = median(kedatangan), #Median jam kedatangan 
    sd_jam = sd(kedatangan), #Standar deviasi jam kedatangan 
    var_jam = var(kedatangan),#Varians jam kedatangan
)
##   mean_jam median_jam    sd_jam    var_jam
## 1 7.514451   7.486292 0.2970172 0.08821923

Visualisasi Data

Visualisasi data digunakan untuk memudahkan kita memahami perbedaan dan pola dalam data secara cepat. Pada analisis ini, digunakan boxplot untuk menampilkan distribusi, nilai tengah (median), serta sebaran jam kedatangan mahasiswa pada hari Senin, Rabu,dan Jumat.

# Boxplot jam kedatangan per hari
boxplot(Jam ~ Hari, data = Jam_Kedatangan,
        col = c("lightgreen", "lightblue", "pink"), #Warna boxplot per hari
        main = "Jam Kedatangan Mahasiswa pada Hari Senin, Rabu, Jumat",
        xlab = "Hari", #Label sumbu X
        ylab = "Jam Kedatangan") #Label sumbu Y

Uji Hipotesis

Uji hipotesis dilakukan untuk mengetahui apakah terdapat perbedaan rata-rata jam kedatangan mahasiswa pada hari Senin, Rabu, dan Jumat. Dengan metode t-test dan ANOVA, analisis ini membantu memastikan apakah perbedaan yang muncul bersifat signifikan atau tidak signifikan.

#t.test untuk membandingan rata-rata jam kedatangan senin dan jumat 
t.test (senin, jumat, alternative = "greater")
## 
##  Welch Two Sample t-test
## 
## data:  senin and jumat
## t = 1.5463, df = 57.463, p-value = 0.06376
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
##  -0.009554585          Inf
## sample estimates:
## mean of x mean of y 
##  7.602488  7.484778

ANOVA (Analisis Varians)

ANOVA adalah metode statistik yang digunakan untuk membandingkan rata-rata dari tiga kelompok atau lebih, untuk melihat apakah ada perbedaan yang nyata di antara kelompok-kelompok tersebut. Cara ini membantu kita mengetahui apakah perbedaan yang terlihat memang disebabkan oleh faktor yang diuji atau hanya kebetulan.

model <- aov ( kedatangan ~ hari)#Membuat model ANOVA untuk membandingkan rata-rata jam kedatangan antar 3 hari.
summary (model) #Hasil ANOVA menunjukkan apakah ada perbedaan yang signifikan di antara hari
##             Df Sum Sq Mean Sq F value Pr(>F)
## hari         2  0.361  0.1806   2.097  0.129
## Residuals   87  7.490  0.0861
TukeyHSD(model) #Tukey HSD menunjukkan pasangan hari mana yang berbeda signifikan
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = kedatangan ~ hari)
## 
## $hari
##                    diff         lwr       upr     p adj
## Rabu-Jumat  -0.02869166 -0.20934272 0.1519594 0.9240613
## Senin-Jumat  0.11771004 -0.06294103 0.2983611 0.2712803
## Senin-Rabu   0.14640170 -0.03424936 0.3270528 0.1357285

Visualisasi Hasil yang Relevan

Visualisasi digunakan untuk mempermudah pemahaman data dan membandingkan jam kedatangan mahasiswa antar hari. Boxplot menampilkan distribusi, median, dan sebaran data, sedangkan plot Tukey HSD memperlihatkan pasangan hari dengan perbedaan rata-rata yang signifikan. Dengan cara ini, pola kedatangan dapat diamati secara cepat dan jelas.

#Boxplot dengan warna berbeda untuk menunjukkan perbandingan antar hari
boxplot(kedatangan ~ hari, data = Jam_Kedatangan,
        main = "Boxplot Jam Kedatangan Mahasiswa per H ari",
        xlab = "Hari",
        ylab = "Jam Kedatangan",
        col = c("skyblue","lightgreen","salmon"))

plot(TukeyHSD(model), las = 1, col ="blue") #Plot hasil Tukey HSD untuk melihat interval kepercyaan perbedaan antar hari

#las = 1 membuat label horizontal, col="blue" memberi warna plot

Kesimpulan

Berdasarkan hasil analisis data simulasi jam kedatangan mahasiswa pada hari Senin, Rabu, dan Jumat dengan asumsi distribusi uniform antara pukul 07.00 hingga 08.00, diperoleh bahwa nilai rata-rata jam kedatangan mahasiswa berada di sekitar pukul 07.5 dengan penyebaran data yang relatif serupa pada ketiga hari tersebut. Hasil uji t-test antara hari Senin dan Jumat tidak menunjukkan adanya perbedaan yang signifikan. Selanjutnya, uji ANOVA juga memberikan hasil bahwa tidak terdapat perbedaan rata-rata jam kedatangan mahasiswa yang signifikan secara statistik pada ketiga hari yang diamati. Uji lanjutan dengan Tukey HSD mengonfirmasi bahwa tidak ada pasangan hari yang berbeda nyata.

Dengan demikian, dapat disimpulkan bahwa rata-rata jam kedatangan mahasiswa pada hari Senin, Rabu, dan Jumat adalah sama atau tidak terdapat perbedaan yang signifikan.