Introducere în iterație
Imaginează-ți că trebuie să citești sute de fișiere cu o structură similară și să efectuezi o acțiune asupra fiecăruia. Nu vrei să scrii sute de linii de cod repetitive pentru a citi toate fișierele sau pentru a aplica acțiunea respectivă. În schimb, vrei să iterezi peste ele. Iterația este procesul de aplicare a aceleiași operații pe mai multe intrări. Capacitatea de a itera este esențială pentru a scrie cod eficient și devine foarte puternică atunci când lucrezi cu liste.
Pentru acest exercițiu, numele a 16 fișiere CSV au fost încărcate într-o listă numită files. În propriile proiecte, ai putea folosi funcția list.files() pentru a crea această listă. Biblioteca readr este deja încărcată.
Acest curs atinge multe concepte pe care s-ar putea să le fi uitat, așa că, dacă ai nevoie de o recapitulare rapidă, descarcă Cheat Sheet-ul tidyverse și păstrează-l la îndemână!
Acest exercițiu face parte din cursul
Bazele programării funcționale cu purrr
Instrucțiuni pentru exercițiu
- Creează o buclă
forcare iterează peste listafilesși furnizează fiecare element ca argument de intrare pentrureadr::read_csv()– adică funcțiaread_csv()din pachetulreadr. - Folosește acel argument astfel încât rezultatul să fie o listă în care fiecare fișier CSV a fost citit într-un element separat al listei
all_filesnou create. - Afișează dimensiunea listei
all_files.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(___)