ComeçarComece de graça

Gerando uma divisão aleatória de treino/teste

Nos próximos exercícios, você vai usar os dados mpg do pacote ggplot2. Esse conjunto descreve características de várias marcas e modelos de carros de diferentes anos. O objetivo é prever a eficiência de combustível na cidade a partir da eficiência na estrada.

Neste exercício, você vai dividir mpg em um conjunto de treino mpg_train (75% dos dados) e um conjunto de teste mpg_test (25% dos dados). Uma forma de fazer isso é gerar uma coluna de números aleatórios com distribuição uniforme entre 0 e 1, usando a função runif() (docs).

Se você tem um conjunto de dados dframe de tamanho \(N\), e quer um subconjunto aleatório de tamanho aproximado \(100 * X\)% de \(N\) (onde \(X\) está entre 0 e 1), então:

  1. Gere um vetor de números aleatórios uniformes: gp = runif(N).
  2. dframe[gp < X,] terá aproximadamente o tamanho desejado.
  3. dframe[gp >= X,] será o complemento.

Este exercício faz parte do curso

Aprendizado Supervisionado em R: Regressão

Ver curso

Instruções do exercício

  • Use a função nrow (docs) para obter o número de linhas do data frame mpg. Atribua essa contagem à variável N e imprima.
  • Calcule aproximadamente quantas linhas correspondem a 75% de N. Atribua à variável target e imprima.
  • Use runif() para gerar um vetor de N números aleatórios uniformes, chamado gp.
  • Use gp para dividir mpg em mpg_train e mpg_test (com mpg_train contendo aproximadamente 75% dos dados).
  • Use nrow() para verificar o tamanho de mpg_train e mpg_test. Eles estão aproximadamente no tamanho esperado?

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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
___
___
Editar e executar o código