Data

Data berisi menit penggunaan harian aplikasi EcoTrack dari 15 pengguna aktif. Data disimpan dalam vektor x agar bisa dipakai di semua soal.

x <- c(22, 25, 19, 30, 24, 21, 45, 23, 20, 26, 24, 22, 18, 27, 23)

Soal 1: Mean, Median, dan Modus

Bagian ini menghitung tiga ukuran pemusatan data. Mean adalah rata-rata, median adalah nilai tengah setelah data diurutkan, dan modus adalah nilai yang paling sering muncul. R tidak punya fungsi bawaan untuk modus, jadi dihitung dengan table().

mean(x)      # rata-rata = jumlah seluruh data dibagi banyak data
## [1] 24.6
median(x)    # nilai tengah data yang sudah diurutkan
## [1] 23
tab <- table(x)                                    # hitung frekuensi tiap nilai
modus <- as.numeric(names(tab)[tab == max(tab)])   # ambil nilai dengan frekuensi terbesar
modus                                              # hasil: 22, 23, 24 (multimodal)
## [1] 22 23 24

Soal 2: Q1, Q3, dan IQR

Kuartil membagi data terurut menjadi empat bagian sama banyak. Q1 adalah batas 25% data terbawah dan Q3 batas 75% data terbawah. IQR = Q3 − Q1 menunjukkan sebaran 50% data di tengah. Boxplot memperlihatkan hal ini secara visual, dan titik di luar kotak menandai outlier.

Q1 <- quantile(x, 0.25)   # kuartil pertama
Q3 <- quantile(x, 0.75)   # kuartil ketiga
Q1; Q3
##  25% 
## 21.5
##  75% 
## 25.5
IQR(x)                    # jangkauan antarkuartil = Q3 - Q1
## [1] 4
# boxplot untuk melihat sebaran data dan outlier
boxplot(x, main = "Boxplot Durasi EcoTrack", horizontal = TRUE)

Soal 3: Varians dan Standar Deviasi

Varians dan standar deviasi mengukur seberapa menyebar data dari rata-ratanya. Semakin besar nilainya, semakin beragam datanya. Koefisien variasi (CV) menyatakan standar deviasi sebagai persentase dari mean, sehingga lebih mudah dinilai tinggi atau rendah.

var(x)                   # varians sampel (dibagi n - 1)
## [1] 41.54286
sd(x)                    # standar deviasi = akar varians
## [1] 6.445375
sd(x) / mean(x) * 100    # koefisien variasi (%)
## [1] 26.20071

Soal 4: Skewness (Kemencengan)

Skewness menunjukkan arah kemencengan distribusi. Nilai positif berarti miring ke kanan (ekor panjang ke nilai besar), nilai negatif miring ke kiri, dan nilai mendekati 0 berarti simetris. Di sini dihitung dengan rumus Pearson secara manual, lalu dibandingkan dengan fungsi skewness() dari paket moments.

library(moments)   # paket untuk fungsi skewness(); install.packages("moments") jika belum ada

# koefisien skewness Pearson = 3 x (mean - median) / standar deviasi
sk_pearson <- 3 * (mean(x) - median(x)) / sd(x)
sk_pearson         # positif -> miring ke kanan
## [1] 0.7447201
skewness(x)        # skewness metode momen (angkanya berbeda dari Pearson, arahnya sama)
## [1] 2.212573
# alternatif
# library(e1071); skewness(x)

Kesimpulan: kedua nilai skewness positif, jadi distribusi miring ke kanan karena adanya pengguna dengan durasi 45 menit.