Lặp với purrr
Bạn đã viết một vòng lặp for rất ổn, nhưng nó dùng khá nhiều mã chỉ để làm việc đơn giản là nạp một loạt tệp vào một list. Đây chính là lúc purrr phát huy tác dụng. Ta có thể làm điều tương tự như vòng lặp for chỉ trong một dòng mã với purrr::map(). Hàm map() lặp qua một list và sử dụng một hàm khác được chỉ định bằng đối số .f.
map() nhận hai đối số:
- Thứ nhất là list sẽ được lặp qua
- Thứ hai là một hàm sẽ áp dụng lên từng phần tử của list
Thư viện readr đã được nạp sẵn.
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
- Nạp thư viện
purrr(lưu ý có 3 chữ R). - Thay thế vòng lặp for ở bài trước bằng
map(). Dùng cùng listfilesvà cùng hàmreadr::read_csv(). - Kiểm tra độ dài của
all_files_purrr.
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.
# Load purrr library
library(___)
# Use map to iterate
all_files_purrr <- map(___, ___)
# Output size of list object
length(___)