Panduan Awal untuk Pohon Keputusan dalam R

Hai teman-teman masa depan ilmuwan data! Hari ini, kita akan memulai perjalanan menarik ke dunia pohon keputusan menggunakan R. Jangan khawatir jika Anda belum pernah mengkode sebelumnya – saya akan menjadi panduan yang ramah setiap langkah jalan. Pada akhir panduan ini, Anda akan dapat membuat pohon keputusan Anda sendiri dan merasa seperti seorang ahli data sejati!

R - Decision Tree

Apa Itu Pohon Keputusan?

Sebelum kita masuk ke kode, mari kita mengerti apa itu pohon keputusan. Bayangkan Anda mencoba untuk memutuskan apakah akan berlari atau tidak. Anda mungkin bertanya kepada diri Anda:

  1. Apakah hujan?
  2. Apakah Anda memiliki cukup waktu?
  3. Apakah Anda merasa energik?

Based pada jawaban Anda, Anda membuat keputusan. Itu sebenarnya apa yang dilakukan pohon keputusan – membuat keputusan berdasarkan serangkaian pertanyaan!

Menginstal Paket R yang Diperlukan

Hal pertama yang harus Anda lakukan, mari kita persiapkan alat yang tepat. Dalam R, alat ini disebut paket. Untuk petualangan pohon keputusan kita, kita akan memerlukan dua paket utama: rpart dan rpart.plot.

Mari kita instalnya:

install.packages("rpart")
install.packages("rpart.plot")

Sekarang, mari kita muat paket ini:

library(rpart)
library(rpart.plot)

Bagus sekali! Anda telah mengambil langkah pertama dalam pemrograman R. Kenaikan punggung Anda!

Membuat Dataset Sederhana

Sekarang kita memiliki alat yang siap, mari kita buat dataset sederhana untuk bekerja dengannya. Bayangkan kita mencoba untuk menebak apakah seseorang akan membeli es krim berdasarkan suhu dan apakah itu adalah hari akhir minggu atau tidak.

# Buat data frame
ice_cream_data <- data.frame(
temperature = c(68, 85, 72, 90, 60, 78, 82, 75, 68, 71),
is_weekend = c(0, 1, 0, 1, 0, 1, 1, 0, 1, 0),
buy_icecream = c(0, 1, 0, 1, 0, 1, 1, 0, 1, 0)
)

# Lihat data
print(ice_cream_data)

Dalam dataset ini:

  • temperature dalam Fahrenheit
  • is_weekend 1 untuk hari akhir minggu, 0 untuk hari kerja
  • buy_icecream 1 jika mereka membeli es krim, 0 jika tidak

Membangun Pohon Keputusan Pertama

Sekarang ke bagian yang menarik – mari kita bangun pohon keputusan kita!

# Buat model pohon keputusan
ice_cream_tree <- rpart(buy_icecream ~ temperature + is_weekend,
data = ice_cream_data,
method = "class")

# Plot pohon
rpart.plot(ice_cream_tree, extra = 106)

mari kitauraikan apa yang terjadi di sini:

  1. rpart() adalah fungsi yang kita gunakan untuk membuat pohon keputusan.
  2. buy_icecream ~ temperature + is_weekend memberitahu R bahwa kita ingin menebak buy_icecream berdasarkan temperature dan is_weekend.
  3. data = ice_cream_data menentukan dataset kita.
  4. method = "class" memberitahu R kita melakukan tugas kelasifikasi (menebak kategori).
  5. rpart.plot() membuat representasi visual pohon kita.

Ketika Anda menjalankan kode ini, Anda akan melihat diagram pohon yang indah. Setiap simpul menunjukkan aturan keputusan, dan daun menunjukkan prediksi. Itu seperti suatu flowchart keputusan es krim!

Mengerti Pohon

Mari kita interpretasi pohon keputusan es krim kita:

  1. Simpul paling atas (akar) menunjukkan pemisahan pertama. Misalnya, "temperature < 76".
  2. Jika benar (ya), ia pergi ke cabang kiri; jika salah (tidak), ia pergi ke cabang kanan.
  3. Proses ini berlanjut sampai mencapai simpul daun, yang memberikan prediksi akhir.

Angka di dalam simpul merepresentasikan:

  • Kelas yang diprediksi (0 atau 1)
  • Probabilitas kelas itu
  • Persentase observasi di simpul itu

Membuat Prediksi

Sekarang kita memiliki pohon, mari kita gunakannya untuk membuat prediksi!

# Buat data baru
new_data <- data.frame(
temperature = c(70, 95),
is_weekend = c(1, 0)
)

# Buat prediksi
predictions <- predict(ice_cream_tree, new_data, type = "class")

# Lihat prediksi
print(predictions)

Kode ini memprediksi apakah seseorang akan membeli es krim pada suhu 70°F di hari akhir minggu dan suhu 95°F di hari kerja.

Menilai Model

Untuk melihat seberapa baik model kita berperforma, kita dapat menggunakan matriks kebingungan:

# Buat prediksi pada data asli
predictions <- predict(ice_cream_tree, ice_cream_data, type = "class")

# Buat matriks kebingungan
confusion_matrix <- table(Actual = ice_cream_data$buy_icecream, Predicted = predictions)

# Lihat matriks kebingungan
print(confusion_matrix)

# Hitung akurasi
accuracy <- sum(diag(confusion_matrix)) / sum(confusion_matrix)
print(paste("Akurasi:", accuracy))

Ini memberikan pandangan cepat tentang berapa banyak prediksi yang benar dan salah.

Kesimpulan

Selamat! Anda telah membuat pohon keputusan pertama Anda dalam R. Dari menginstal paket hingga membuat prediksi, Anda telah menempuh banyak langkah. Ingat, latihan membuat sempurna, jadi jangan takut untuk mencoba dataset dan parameter yang berbeda.

Berikut adalah ringkasan metode yang kita gunakan:

Metode Deskripsi
install.packages() Instal paket R
library() Muat paket yang diinstal
data.frame() Buat data frame
rpart() Bangun pohon keputusan
rpart.plot() Visualisasikan pohon keputusan
predict() Buat prediksi menggunakan pohon
table() Buat matriks kebingungan

Terus menjelajahi, terus belajar, dan terutama, bersenang-senang dengan ilmu data!

Credits: Image by storyset