NULL vs NA di R
Penjelasan
R punya DUA representasi "kosong" yang sering tertukar pemula: `NULL` berarti KETIADAAN objek sepenuhnya (mis. elemen list yang dihapus, atau fungsi yang tidak mengembalikan apa-apa), sedangkan `NA` berarti nilai YANG ADA tapi HILANG/tidak diketahui (mis. data survei yang tidak diisi responden). `NA` punya "tempat" di dalam vector (ikut dihitung `length()`), sedangkan `NULL` TIDAK punya tempat sama sekali.
Contoh Konsep
nilai <- c(80, NA, 90, 75)
length(nilai) # 4, NA tetap dihitung sebagai elemen
is.na(nilai) # FALSE TRUE FALSE FALSE
x <- NULL
length(x) # 0, NULL tidak punya elemen sama sekali
is.null(x) # TRUE
# Menghapus elemen list dengan mengisinya NULL
daftar <- list(a = 1, b = 2, c = 3)
daftar$b <- NULL # elemen b hilang sepenuhnya dari list
print(daftar) # cuma tersisa a dan c
Praktikum
Buat vector nilai <- c(70, NA, 85, NA, 90). Cek elemen mana yang NA dengan is.na(), lalu hitung mean()-nya dengan na.rm = TRUE supaya NA tidak mengganggu perhitungan.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Fungsi statistik (`mean`, `sum`, `sd`, dst) akan mengembalikan `NA` kalau vector-nya mengandung `NA`, KECUALI kamu tambahkan `na.rm = TRUE` untuk mengabaikan nilai NA saat menghitung — lupa menambahkan ini adalah sumber bug paling umum bagi pemula R.