Czy jesteś funkcyjny? (2)
Przykładowa implementacja funkcji interpret() jest już gotowa. W tym ćwiczeniu napiszesz kolejną funkcję, która użyje interpret() do przetworzenia wszystkich danych o dziennych wyświetleniach twojego profilu zapisanych w wektorze. Dodatkowo twoja funkcja będzie zwracać sumę wyświetleń w popularnych dniach – jeśli o to poprosisz. Do iterowania po wszystkich elementach wektora idealnie nadaje się pętla for. Możliwość zwracania sumy wyświetleń w popularnych dniach zrealizujesz za pomocą argumentu funkcji z wartością domyślną.
To ćwiczenie jest częścią kursu
Intermediate R
Instrukcje do ćwiczenia
Uzupełnij szablon funkcji interpret_all():
- Ustaw
return_sumjako opcjonalny argument z wartością domyślnąTRUE. - Wewnątrz pętli
foriteruj po wszystkich elementachviews: w każdej iteracji dodaj wynikinterpret(v)docount. Pamiętaj, żeinterpret(v)zwracavdla popularnych dni, a0w pozostałych przypadkach. Jednocześnieinterpret(v)wykonuje też pewne wydruki. - Uzupełnij konstrukcję
if: - Jeśli
return_summa wartośćTRUE, zwróćcount. - W przeciwnym razie zwróć
NULL.
Wywołaj nowo zdefiniowaną funkcję dla wektorów linkedin i facebook.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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