Bắt đầu ngayBắt đầu miễn phí

Thay bằng NA với safely()

Nếu bạn dùng map() trên một list và có phần tử không đúng kiểu dữ liệu, bạn sẽ không nhận được đầu ra như mong đợi. Ví dụ, bạn muốn thực hiện phép toán trên từng phần tử, nhưng một phần tử lại là kiểu ký tự (character) — thao tác đó sẽ không chạy được.

Với một list rất lớn, việc xác định sai ở đâu và cụ thể sai gì có thể rất khó. Đây là lúc safely() phát huy tác dụng; hàm này cho bạn thấy cả kết quả lẫn vị trí lỗi xảy ra trong lời gọi map() của bạ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

Xem khóa học

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.

# Map safely over log
a <- list(1, "I can", 10, 0, "purrr") %>%
      map(___(___, otherwise = NA_real_)) %>%
    # Transpose the result
      transpose() 
Chỉnh sửa và Chạy Mã