Skapa en slumpmässig test- och träningsuppdelning
I de kommande övningarna använder du datamängden mpg från paketet ggplot2. Den beskriver egenskaper hos olika bilmärken och modeller från olika år. Målet är att förutsäga bränsleeffektivitet i stad utifrån bränsleeffektivitet på landsväg.
I den här övningen delar du upp mpg i ett träningsset mpg_train (75% av datan) och ett testset mpg_test (25% av datan). Ett sätt att göra det är att generera en kolumn med jämnt fördelade slumpmässiga tal mellan 0 och 1, med hjälp av funktionen runif() (dokumentation).
Om du har en datamängd dframe av storleken \(N\) och vill ha ett slumpmässigt urval på ungefär \(100 * X\)% av \(N\) (där \(X\) är ett tal mellan 0 och 1) gör du så här:
- Generera en vektor med jämnt fördelade slumpmässiga tal:
gp = runif(N). dframe[gp < X,]ger ungefär rätt storlek.dframe[gp >= X,]ger komplementet.
Den här övningen är en del av kursen
Övervakad inlärning i R: Regression
Övningsinstruktioner
- Använd funktionen
nrow(dokumentation) för att hämta antalet rader i dataramenmpg. Tilldela antalet till variabelnNoch skriv ut det. - Beräkna hur många rader 75% av N ungefär motsvarar. Tilldela värdet till variabeln
targetoch skriv ut det. - Använd
runif()för att generera en vektor medNjämnt fördelade slumpmässiga tal och kalla dengp. - Använd
gpför att dela uppmpgimpg_trainochmpg_test(därmpg_traininnehåller ungefär 75% av datan). - Använd
nrow()för att kontrollera storleken påmpg_trainochmpg_test. Stämmer de ungefär med förväntat antal rader?
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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
___
___