sapply không thể đơn giản hóa, rồi sao?
Có vẻ chúng ta đã trúng mánh với sapply(). Trong tất cả ví dụ vừa qua, sapply() đều có thể “làm gọn” đầu ra khá cồng kềnh của lapply(). Nhưng, cũng như trong cuộc sống, có những thứ bạn không thể đơn giản hóa. sapply() phản ứng thế nào?
Chúng ta đã tạo sẵn một hàm below_zero() nhận vào một vector số và trả về một vector chỉ chứa các giá trị nhỏ hơn 0 một cách nghiêm ngặt.
Bài tập này là một phần của khóa học
R nâng cao
Hướng dẫn bài tập
- Áp dụng
below_zero()lêntempbằngsapply()và lưu kết quả vàofreezing_s. - Áp dụng
below_zero()lêntempbằnglapply(). Lưu danh sách kết quả vào biếnfreezing_l. - So sánh
freezing_svớifreezing_lbằng hàmidentical().
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.
# temp is already prepared for you in the workspace
# Definition of below_zero()
below_zero <- function(x) {
return(x[x < 0])
}
# Apply below_zero over temp using sapply(): freezing_s
# Apply below_zero over temp using lapply(): freezing_l
# Are freezing_s and freezing_l identical?