Hàm ẩn danh
Ở bài cuối cùng này, bạn sẽ tìm hiểu về một khái niệm gọi là hàm ẩn danh (anonymous functions). Từ đầu đến giờ, khi gọi một hàm apply như vapply(), bạn đã truyền các hàm có tên vào đối số FUN. Có vẻ hơi phí khi phải tạo hẳn một hàm chỉ để dùng cho lời gọi vapply() cụ thể đó, đúng không? Thay vào đó, bạn có thể dùng hàm ẩn danh!
Hàm có tên:
percent_to_decimal <- function(percent) {
percent / 100
}
Hàm ẩn danh:
function(percent) { percent / 100 }
Như bạn thấy, hàm ẩn danh về cơ bản là các hàm không được gán tên. Để dùng chúng trong vapply(), bạn có thể làm như sau:
vapply(stock_return, FUN = function(percent) { percent / 100 },
FUN.VALUE = numeric(2))
apple ibm
[1,] 0.003744634 0.001251408
[2,] -0.007188353 -0.001124859
stock_return đã được cung cấp để bạn sử dụng.
Bài tập này là một phần của khóa học
R trung cấp cho Tài chính
Hướng dẫn bài tập
- Dùng
vapply()để áp dụng một hàm ẩn danh trả về một vector gồmmax()vàmin()(theo thứ tự đó) của từng cột trongstock_return.
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.
# Max and min
vapply(___,
FUN = function(x) { ___ },
FUN.VALUE = ___)