R - Mean, Median, dan Mode

Halo, para pemrogram R yang bersemangat! Hari ini, kita akan melihat dunia statistik deskriptif menggunakan R. Sebagai guru ilmu komputer yang ramah di lingkungan sekitar Anda, saya di sini untuk mengorbit Anda melalui konsep mean, median, dan mode. Jangan khawatir jika Anda belum pernah menulis satu baris kode sebelumnya – kita akan mulai dari awal dan bekerja bersama-sama menuju atas.

R - Mean, Median & Mode

Mean

Mari kita mulai dengan mean, yang mungkin adalah ukuran central tendency yang paling umum. Dalam istilah sederhana, itu adalah apa yang kita sering sebut "rata-rata."

Perhitungan Mean Dasar

Untuk menghitung mean di R, kita menggunakan fungsi mean(). Ini adalah contoh sederhana:

numbers <- c(10, 20, 30, 40, 50)
result <- mean(numbers)
print(result)

Ini akan mengoutput: 30

mari kitauraikan ini:

  1. Kita membuat vektor yang disebut numbers menggunakan fungsi c().
  2. Kita menggunakan fungsi mean() untuk menghitung rata-rata dari bilangan ini.
  3. Kita menyimpan hasilnya dalam variabel yang disebut result.
  4. Akhirnya, kita cetak hasilnya.

Mean dengan Nilai NA

Apa yang terjadi jika kita memiliki data yang hilang, yang direpresentasikan oleh NA di R? Mari kita lihat:

numbers_with_na <- c(10, 20, NA, 40, 50)
result_with_na <- mean(numbers_with_na)
print(result_with_na)

Ini akan mengoutput: NA

Wah! R mengembalikan NA karena itu tidak tahu bagaimana menangani nilai yang hilang. Tetapi jangan khawatir, kita memiliki solusi!

Menggunakan Opsi NA

Kita dapat memberitahu R untuk mengabaikan nilai NA menggunakan opsi na.rm:

numbers_with_na <- c(10, 20, NA, 40, 50)
result_na_removed <- mean(numbers_with_na, na.rm = TRUE)
print(result_na_removed)

Ini akan mengoutput: 30

Jauh lebih baik! Dengan menyetel na.rm = TRUE, kita mengatakan kepada R untuk menghapus nilai NA sebelum menghitung mean.

Menggunakan Opsi Trim

kadang-kadang, kita ingin mengabaikan nilai ekstrim dari perhitungan mean kita. Itu di mana opsi trim berguna. Itu memungkinkan kita untuk memotong persentase nilai dari kedua ujung data sebelum menghitung mean.

numbers <- c(1, 2, 3, 4, 5, 100)  # Catatan outliers 100
result_trimmed <- mean(numbers, trim = 0.1)
print(result_trimmed)

Ini akan mengoutput nilai dekat 3.5

Dengan menyetel trim = 0.1, kita menghapus 10% data dari masing-masing ujung sebelum menghitung mean. Ini membantu mengurangi dampak outliers.

Median

Median adalah nilai tengah saat dataset diurutkan dari terkecil ke terbesar. Ini kurang terpengaruh oleh outliers daripada mean.

numbers <- c(1, 3, 5, 7, 9, 11, 13)
result_median <- median(numbers)
print(result_median)

Ini akan mengoutput: 7

Fungsi median() bekerja sama seperti mean(). Itu juga memiliki opsi na.rm untuk menangani nilai NA:

numbers_with_na <- c(1, 3, NA, 7, 9, 11, 13)
result_median_na <- median(numbers_with_na, na.rm = TRUE)
print(result_median_na)

Ini akan mengoutput: 8

Mode

Menariknya, R tidak memiliki fungsi bawaan untuk mode (nilai yang paling sering). Tetapi jangan khawatir! Kita dapat membuat fungsi kita sendiri:

get_mode <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}

numbers <- c(1, 2, 2, 3, 3, 3, 4, 4, 5)
result_mode <- get_mode(numbers)
print(result_mode)

Ini akan mengoutput: 3

mari kitauraikan fungsi khusus ini:

  1. unique(v) mendapatkan nilai unik dalam vektor.
  2. match(v, uniqv) mencari posisi kecocokan.
  3. tabulate() menghitung jumlah kejadian.
  4. which.max() mencari posisi kejadian maksimum.
  5. Kita mengembalikan nilai pada posisi itu.

Ringkasan Fungsi

Berikut adalah tabel praktis yang meringkasan fungsi yang kita pelajari:

Measure Function Options
Mean mean() na.rm, trim
Median median() na.rm
Mode Custom function N/A

Ingat, latihan membuat sempurna! Cobalah fungsi ini dengan dataset yang berbeda dan jelajahi bagaimana perubahan opsi mempengaruhi hasilnya.

Saat kita mengakhiri, saya diperingatkan oleh cerita dari hari-hari awal belajarnya R. Pernah sekali, saya menghabiskan jam-jam mencoba menghitung mean dari dataset, hanya untuk menyadari bahwa saya telah lupa menghapus nilai NA. Jangan seperti saya – selalu periksa data Anda dan gunakan na.rm = TRUE saat diperlukan!

Selamat coding, dan semoga petualangan statistik Anda di R penuh dengan wawasan dan momen "aha"!

Credits: Image by storyset