R you functional? (2)
Можлива реалізація функції interpret() уже надана. У цій вправі ви напишете іншу функцію, яка використає interpret() для інтерпретації всіх даних про щоденні перегляди вашого профілю, зібраних у векторі. Крім того, за потреби ваша функція повертатиме суму переглядів у популярні дні. Для проходження всіх елементів вектора ідеально підходить цикл for. Можливість повертати суму переглядів у популярні дні можна реалізувати через аргумент функції зі значенням за замовчуванням.
Ця вправа є частиною курсу
Середній рівень R
Інструкції до вправи
Завершіть шаблон функції interpret_all():
- Зробіть
return_sumнеобов'язковим аргументом, тобто зі значеннямTRUEза замовчуванням. - Усередині циклу
forпройдіться по всіхviews: на кожній ітерації додайте результатinterpret(v)доcount. Пам'ятайте, щоinterpret(v)повертаєvдля популярних днів і0— інакше. Водночасinterpret(v)також щось виводитиме у консоль. - Завершіть конструкцію
if: - Якщо
return_sumдорівнюєTRUE, повернітьcount. - Інакше поверніть
NULL.
Викличте щойно визначену функцію як для linkedin, так і для facebook.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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