Ordina casualmente il data frame
Un modo per creare una suddivisione train/test di un insieme di dati è ordinarlo in modo casuale e poi dividerlo nei due insiemi. In questo modo sia il training set sia il test set sono campioni casuali e non si mantengono eventuali bias dovuti all’ordinamento originale dell’insieme di dati (ad esempio, se inizialmente era ordinato per prezzo o dimensione) nei campioni che usi per addestrare e testare i tuoi modelli. Puoi pensarla come mescolare un mazzo di carte nuovo prima di distribuire le mani.
Per prima cosa, imposta un seed casuale così che il tuo lavoro sia riproducibile e tu ottenga la stessa suddivisione casuale ogni volta che esegui lo script:
set.seed(42)
Poi, usa la funzione sample() per mescolare gli indici di riga del dataset diamonds. Potrai poi usare questi indici per riordinare l’insieme di dati.
rows <- sample(nrow(diamonds))
Infine, puoi usare questo vettore casuale per riordinare il dataset diamonds:
diamonds <- diamonds[rows, ]
Questo esercizio fa parte del corso
Machine Learning con caret in R
Istruzioni dell'esercizio
- Imposta il seed casuale a 42.
- Crea un vettore di indici di riga chiamato
rows. - Riordina casualmente il data frame
diamonds, assegnandolo ashuffled_diamonds.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Set seed
# Shuffle row indices: rows
# Randomly order data