Wprowadzenie do iteracji
Wyobraź sobie, że musisz wczytać setki plików o podobnej strukturze i wykonać na nich jakąś operację. Pisanie setek powtarzających się linii kodu to ostatnie, czego chcesz. Zamiast tego warto iterować po tych plikach. Iteracja polega na wykonywaniu tego samego działania dla wielu danych wejściowych. Umiejętność iterowania sprawia, że kod jest wydajny – i nabiera szczególnej mocy podczas pracy z listami.
Na potrzeby tego ćwiczenia nazwy 16 plików CSV zostały wczytane do listy o nazwie files. We własnych projektach możesz tworzyć taką listę za pomocą funkcji list.files(). Biblioteka readr jest już załadowana.
Kurs porusza wiele zagadnień, które mogły ci umknąć z pamięci – jeśli będziesz potrzebować szybkiego przypomnienia, pobierz ściągawkę tidyverse i miej ją pod ręką!
To ćwiczenie jest częścią kursu
Podstawy programowania funkcyjnego z purrr
Instrukcje do ćwiczenia
- Utwórz pętlę
for, która iteruje po liściefilesi przekazuje każdy jej element jako argument wejściowy doreadr::read_csv()– czyli funkcjiread_csv()z pakietureadr. - Następnie wykorzystaj ten argument tak, aby wynikiem była lista, w której każdy plik CSV został wczytany do osobnego elementu nowo utworzonej listy
all_files. - Wyświetl rozmiar listy
all_files.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(___)