Introduzione all’iterazione
Immagina di dover leggere centinaia di file con una struttura simile ed eseguire un’azione su ciascuno. Non vuoi scrivere centinaia di righe ripetitive per leggerli tutti o per effettuare l’azione. Preferisci invece iterare su di essi. L’iterazione è il processo di applicare lo stesso procedimento a più input. Saper iterare è importante per rendere il tuo codice efficiente, ed è molto utile quando lavori con le liste.
Per questo esercizio, i nomi di 16 file CSV sono stati caricati in una lista chiamata files. Nel tuo lavoro, potresti usare la funzione list.files() per creare questa lista. La libreria readr è già caricata.
Questo corso tocca molti concetti che potresti aver dimenticato: se ti serve un ripasso veloce, scarica il tidyverse Cheat Sheet e tienilo a portata di mano!
Questo esercizio fa parte del corso
Le basi della programmazione funzionale con purrr
Istruzioni dell'esercizio
- Crea un ciclo for che itera sulla lista
filese passa ciascun elemento come input areadr::read_csv()(un altro modo per dire la funzioneread_csv()del pacchettoreadr). - Usa poi quell’input, in modo che il risultato sia una lista in cui ogni file CSV viene letto in un elemento separato della nuova lista
all_files. - Stampa la dimensione della lista
all_files.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Initialize list
all_files <- list()
# For loop to read files into a list
for(i in seq_along(files)){
___[[___]] <- read_csv(file = ___[[___]])
}
# Output size of list object
length(___)