Giới thiệu về vòng lặp
Hãy tưởng tượng bạn cần đọc hàng trăm tệp có cấu trúc tương tự và thực hiện một thao tác trên chúng. Bạn không muốn viết hàng trăm dòng mã lặp lại để đọc tất cả tệp hoặc thực hiện thao tác đó. Thay vào đó, bạn muốn lặp qua chúng. Iteration là quá trình áp dụng cùng một thao tác cho nhiều đầu vào. Biết cách lặp giúp mã của bạn hiệu quả hơn và rất mạnh khi làm việc với list.
Trong bài này, tên của 16 tệp CSV đã được nạp vào một list gọi là files. Trong công việc của mình, bạn có thể dùng hàm list.files() để tạo list này. Thư viện readr cũng đã được nạp sẵn.
Khóa học này chạm đến nhiều khái niệm bạn có thể đã quên, nên nếu cần ôn nhanh, hãy tải tidyverse Cheat Sheet và giữ sẵn để tra cứu!
Bài tập này là một phần của khóa học
Nền tảng Lập trình Hàm với purrr
Hướng dẫn bài tập
- Tạo một vòng lặp for, lặp qua list
filesvà truyền mỗi phần tử làm đầu vào choreadr::read_csv()(tức là dùng hàmread_csv()từ góireadr). - Sau đó dùng đầu vào đó để kết quả là một list, trong đó mỗi tệp CSV được đọc vào một phần tử riêng của list mới
all_files. - In ra kích thước của list
all_files.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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(___)