Bắt đầu ngayBắt đầu miễn phí

Thử tách 60/40

Như bạn đã thấy trong video, ở chương này bạn sẽ làm việc với bộ dữ liệu Sonar, dùng 60% cho tập huấn luyện và 40% cho tập kiểm tra. Chúng ta sẽ luyện tập thêm một lần nữa cách tạo train/test split để bạn thật chắc tay. Hãy nhớ bạn có thể dùng hàm sample() để lấy một hoán vị ngẫu nhiên của các chỉ số dòng trong một bộ dữ liệu, dùng khi tạo train/test split, ví dụ:

n_obs <- nrow(my_data)
permuted_rows <- sample(n_obs)

Sau đó dùng các chỉ số dòng này để sắp xếp lại bộ dữ liệu theo thứ tự ngẫu nhiên, ví dụ:

my_data <- my_data[permuted_rows, ]

Khi bộ dữ liệu đã được sắp xếp ngẫu nhiên, bạn có thể tách 60% đầu làm tập huấn luyện và 40% cuối làm tập kiểm tra.

Bài tập này là một phần của khóa học

Machine Learning với caret trong R

Xem khóa học

Hướng dẫn bài tập

  • Lấy số quan sát (số dòng) trong Sonar, gán vào n_obs.
  • Xáo trộn các chỉ số dòng của Sonar và lưu vào permuted_rows.
  • Dùng permuted_rows để sắp xếp ngẫu nhiên các dòng của Sonar, lưu thành Sonar_shuffled.
  • Xác định dòng phù hợp để tách theo tỷ lệ 60/40. Lưu số dòng này vào split.
  • Lưu 60% đầu của Sonar_shuffled làm tập huấn luyện.
  • Lưu 40% cuối của Sonar_shuffled làm tập kiểm tra.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Get the number of observations


# Shuffle row indices: permuted_rows


# Randomly order data: Sonar


# Identify row to split on: split
split <- round(n_obs * ___)

# Create train


# Create test
Chỉnh sửa và Chạy Mã