Chuyển dữ liệu sang dạng số với purrr
Trong bộ dữ liệu sw_people, một số nhân vật Star Wars có chiều cao không xác định. Nếu bạn muốn khám phá dữ liệu và xem chiều cao nhân vật khác nhau thế nào theo hành tinh quê hương, bạn cần viết mã để R phân biệt được giữa chiều cao hợp lệ và giá trị thiếu. Hiện tại, các giá trị thiếu được nhập là "unknown", nhưng bạn muốn chúng là NA. Trong bài tập này, bạn sẽ kết hợp map() và ifelse() để xử lý vấn đề này.
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 bộ dữ liệu
sw_people. - Dùng map trên
sw_peoplevà lấy trường"height". - Sau đó map trên đầu ra và nếu một phần tử được gán là "unknown" thì đổi thành
NA, ngược lại, chuyển giá trị đó sang số bằngas.numeric().
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 sw_people data
data(___)
# Map over sw_people and pull out the height element
height_cm <- map(___, ___) %>%
map(function(x){
ifelse(___ == "unknown",NA,
as.numeric(___))
})