ComeçarComece de graça

Partições de treinamento/teste

Na maior parte do tempo, quando você executa um modelo preditivo, precisa ajustar o modelo em um subconjunto dos seus dados (o conjunto de "training"), e depois testar as previsões do modelo no restante dos dados (o conjunto de "testing").

sdf_random_split() oferece uma forma de particionar seu data frame em conjuntos de training e testing. Seu uso é o seguinte.

a_tibble %>%
  sdf_random_split(training = 0.7, testing = 0.3)

Há dois pontos importantes sobre o uso. Primeiro, se os valores das partições não somarem um, eles serão escalonados para somar. Então, se você passar training = 0.35 e testing = 0.15, receberá o dobro do que solicitou. Segundo, você pode usar quaisquer nomes de conjuntos que quiser e particionar os dados em mais de dois conjuntos. Portanto, o seguinte também é válido.

a_tibble %>%
  sdf_random_split(a = 0.1, b = 0.2, c = 0.3, d = 0.4)

O valor retornado é uma lista de tibbles. Você pode acessar cada um usando os operadores usuais de indexação de listas.

partitioned$a
partitioned[["b"]]

Este exercício faz parte do curso

Introdução ao Spark com sparklyr em R

Ver curso

Instruções do exercício

Uma conexão Spark foi criada para você como spark_conn. Um tibble ligado aos metadados das faixas armazenados no Spark já foi definido como track_metadata_tbl.

  • Use sdf_random_split() para dividir os metadados das faixas.
    • Coloque 70% em um conjunto chamado training.
    • Coloque 30% em um conjunto chamado testing.
  • Obtenha as dimensões (sdf_dim()) do tibble de training.
  • Obtenha as dimensões do tibble de testing.

Exercício interativo prático

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

# track_metadata_tbl has been pre-defined
track_metadata_tbl

partitioned <- track_metadata_tbl %>%
  # Partition into training and testing sets
  ___

# Get the dimensions of the training set
___

# Get the dimensions of the testing set
___
Editar e executar o código