CommencezCommencez gratuitement

Réordonner le tableau de données aléatoirement

Une façon d'effectuer une division train/test d'un jeu de données consiste à l'ordonner aléatoirement, puis à le scinder en deux ensembles. Cela garantit que l'ensemble d'entraînement et l'ensemble de test sont tous deux des échantillons aléatoires et que tout biais dans l'ordre du jeu de données (p. ex., s'il avait été initialement trié par prix ou par taille) ne se retrouve pas dans les échantillons utilisés pour entraîner et tester vos modèles. On peut comparer cela à brasser un nouveau paquet de cartes avant de distribuer.

D'abord, définissez une graine aléatoire pour que votre travail soit reproductible et que vous obteniez la même division aléatoire chaque fois que vous exécutez votre script :

set.seed(42)

Ensuite, utilisez la fonction sample() pour mélanger les indices de lignes du jeu de données diamonds. Vous pourrez ensuite utiliser ces indices pour réordonner le jeu de données.

rows <- sample(nrow(diamonds))

Enfin, utilisez ce vecteur aléatoire pour réordonner le jeu de données diamonds :

diamonds <- diamonds[rows, ]

Cette activité fait partie du cours

Machine Learning avec caret en R

Voir le cours

Instructions de l’exercice

  • Définissez la graine aléatoire à 42.
  • Créez un vecteur d'indices de lignes nommé rows.
  • Réordonnez aléatoirement le tableau de données diamonds et assignez le résultat à shuffled_diamonds.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Set seed


# Shuffle row indices: rows


# Randomly order data
Modifier et exécuter le code