Dùng vapply
Trước khi bắt tay vào làm quen với hàm apply thứ ba và cũng là cuối cùng mà bạn sẽ học trong khóa R trình độ trung cấp này, hãy xem qua cú pháp của nó. Hàm có tên là vapply(), với cú pháp như sau:
vapply(X, FUN, FUN.VALUE, ..., USE.NAMES = TRUE)
Trên các phần tử trong X, hàm FUN sẽ được áp dụng. Đối số FUN.VALUE mong đợi một khuôn mẫu cho giá trị trả về của hàm FUN này. USE.NAMES mặc định là TRUE; trong trường hợp này vapply() sẽ cố gắng tạo một mảng có tên, nếu có thể.
Trong loạt bài tập tiếp theo, bạn sẽ lại làm việc với danh sách temp, chứa 7 vector số, mỗi vector có độ dài 5. Chúng tôi cũng đã viết sẵn hàm basics() nhận vào một vector và trả về một vector có tên với độ dài 3, lần lượt chứa giá trị nhỏ nhất, trung bình và lớn nhất của vector đó.
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 hàm
basics()lên danh sách nhiệt độtempbằngvapply(). Lần này, bạn có thể dùngnumeric(3)để chỉ định đối sốFUN.VALUE.
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 available in the workspace
# Definition of basics()
basics <- function(x) {
c(min = min(x), mean = mean(x), max = max(x))
}
# Apply basics() over temp using vapply()