R you functional? (2)
Một cách cài đặt khả dĩ cho hàm interpret() đã được cung cấp sẵn. Trong bài này, bạn sẽ viết một hàm khác dùng interpret() để diễn giải tất cả dữ liệu lượt xem hồ sơ hằng ngày trong một vector. Ngoài ra, nếu được yêu cầu, hàm của bạn sẽ trả về tổng lượt xem trong các ngày phổ biến. Vòng lặp for rất phù hợp để duyệt qua tất cả phần tử của vector. Khả năng trả về tổng lượt xem trong các ngày phổ biến có thể được điều khiển bằng một đối số hàm với giá trị mặc định.
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
Hoàn thiện mẫu hàm interpret_all():
- Biến
return_sumthành đối số tùy chọn, mặc định làTRUE. - Bên trong vòng lặp
for, lặp qua toàn bộviews: ở mỗi vòng lặp, cộng kết quả củainterpret(v)vàocount. Nhớ rằnginterpret(v)trả vềvcho những ngày phổ biến, và0cho các ngày khác. Đồng thời,interpret(v)cũng sẽ in ra một số thông tin. - Hoàn thiện cấu trúc
if: - Nếu
return_sumlàTRUE, trả vềcount. - Ngược lại, trả về
NULL.
Gọi hàm vừa định nghĩa với cả linkedin và facebook.
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.
# The linkedin and facebook vectors have already been created for you
linkedin <- c(16, 9, 13, 5, 2, 17, 14)
facebook <- c(17, 7, 5, 16, 8, 13, 14)
# The interpret() can be used inside interpret_all()
interpret <- function(num_views) {
if (num_views > 15) {
print("You're popular!")
return(num_views)
} else {
print("Try to be more visible!")
return(0)
}
}
# Define the interpret_all() function
# views: vector with data to interpret
# return_sum: return total number of views on popular days?
interpret_all <- function(views, return_sum) {
count <- 0
for (v in views) {
}
if (return_sum) {
} else {
}
}
# Call the interpret_all() function on both linkedin and facebook