Zacznij terazZacznij za darmo

Generowanie losowego podziału na zbiór testowy i treningowy

W kilku kolejnych ćwiczeniach będziesz korzystać z danych mpg z pakietu ggplot2. Zbiór opisuje charakterystyki różnych marek i modeli samochodów z różnych lat. Celem jest przewidywanie zużycia paliwa w mieście na podstawie zużycia paliwa na autostradzie.

W tym ćwiczeniu podzielisz zbiór mpg na zbiór treningowy mpg_train (75% danych) i zbiór testowy mpg_test (25% danych). Jednym ze sposobów jest wygenerowanie kolumny jednostajnych liczb losowych z przedziału od 0 do 1 przy użyciu funkcji runif() (dokumentacja).

Jeśli masz zbiór danych dframe o rozmiarze \(N\) i chcesz losowy podzbiór o przybliżonym rozmiarze \(100 * X\)% z \(N\) (gdzie \(X\) należy do przedziału od 0 do 1), postępuj następująco:

  1. Wygeneruj wektor jednostajnych liczb losowych: gp = runif(N).
  2. dframe[gp < X,] będzie miał mniej więcej odpowiedni rozmiar.
  3. dframe[gp >= X,] będzie jego dopełnieniem.

To ćwiczenie jest częścią kursu

Nadzorowane uczenie maszynowe w R: regresja

Zobacz kurs

Instrukcje do ćwiczenia

  • Użyj funkcji nrow (dokumentacja), aby uzyskać liczbę wierszy w ramce danych mpg. Przypisz tę wartość do zmiennej N i wydrukuj ją.
  • Oblicz, ile wierszy stanowi około 75% z N. Przypisz wynik do zmiennej target i wydrukuj go.
  • Użyj runif(), aby wygenerować wektor N jednostajnych liczb losowych o nazwie gp.
  • Użyj gp, aby podzielić mpg na mpg_train i mpg_test (tak, żeby mpg_train zawierał około 75% danych).
  • Użyj nrow(), aby sprawdzić rozmiary mpg_train i mpg_test. Czy mają mniej więcej oczekiwaną wielkość?

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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
___
___
Edytuj i uruchom kod