MulaiMulai sekarang secara gratis

Membuat pembagian acak data train/test

Untuk beberapa latihan berikutnya Anda akan menggunakan data mpg dari paket ggplot2. Data ini memuat karakteristik berbagai merek dan model mobil dari berbagai tahun. Tujuannya adalah memprediksi efisiensi bahan bakar di kota berdasarkan efisiensi bahan bakar di jalan raya.

Pada latihan ini, Anda akan membagi mpg menjadi himpunan latih mpg_train (75% data) dan himpunan uji mpg_test (25% data). Salah satu cara melakukannya adalah dengan membuat sebuah kolom berisi angka acak sebaran seragam antara 0 dan 1 menggunakan fungsi runif() (docs).

Jika Anda memiliki himpunan data dframe berukuran \(N\), dan Anda menginginkan subset acak dengan ukuran kira-kira \(100 * X\)% dari \(N\) (di mana \(X\) berada antara 0 dan 1), maka:

  1. Hasilkan sebuah vektor angka acak seragam: gp = runif(N).
  2. dframe[gp < X,] akan berukuran kurang lebih sesuai.
  3. dframe[gp >= X,] akan menjadi komplemennya.

Latihan ini adalah bagian dari kursus

Supervised Learning di R: Regresi

Lihat Kursus

Petunjuk latihan

  • Gunakan fungsi nrow (docs) untuk mendapatkan jumlah baris pada data frame mpg. Simpan hitungan ini ke variabel N dan cetak.
  • Hitung kira-kira berapa baris yang merupakan 75% dari N. Simpan ke variabel target dan cetak.
  • Gunakan runif() untuk menghasilkan sebuah vektor berisi N angka acak seragam, bernama gp.
  • Gunakan gp untuk membagi mpg menjadi mpg_train dan mpg_test (dengan mpg_train berisi sekitar 75% data).
  • Gunakan nrow() untuk memeriksa ukuran mpg_train dan mpg_test. Apakah ukurannya sudah kurang lebih sesuai?

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# mpg is available
summary(mpg)
dim(mpg)

# Use nrow to get the number of rows in mpg (N) and print it
(N <- ___)

# Calculate how many rows 75% of N should be and print it
# Hint: use round() to get an integer
(target <- ___)

# Create the vector of N uniform random variables: gp
gp <- ___

# Use gp to create the training set: mpg_train (75% of data) and mpg_test (25% of data)
mpg_train <- ___
mpg_test <- ___

# Use nrow() to examine mpg_train and mpg_test
___
___
Edit dan Jalankan Kode